Information processing system, information processing method, and information processing program
The information processing system addresses the challenge of long avatar travel distances in virtual spaces by using guide and supplementary information to assist users in efficiently moving their avatars, enhancing navigation within large virtual environments.
Patent Information
- Application Number
- JP2024092146
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-06-06
- Publication Date
- 2025-05-09
- Estimated Expiration
- 2041-06-28
AI Technical Summary
In virtual spaces designed to mimic real-world environments with wide areas, avatars often have to travel long distances to reach desired locations, making it difficult for users to easily move their avatars to desired positions.
An information processing system that includes a drawing unit for creating display images for terminals, an acquisition unit for obtaining user input, and a position change unit that moves avatars based on user input, while also providing guide information and supplementary guide information, such as distance and distance change information, to assist users in moving their avatars efficiently.
The system effectively assists users in moving their avatars within virtual spaces by providing clear guidance and distance information, reducing the complexity of navigating large virtual environments.
Smart Images

Figure 0007674008000001 
Figure 0007674008000002 
Figure 0007674008000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to an information processing system, an information processing method, and an information processing program. [Background technology]
[0002] A technique is known in which a plurality of types of spatial portions, such as rooms and an ice land, are set in a virtual space, and doors for entering specific spatial portions are arranged in the space where an avatar is located. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2018-109835 A Summary of the Invention [Problem to be solved by the invention]
[0004] When a virtual space is designed to be a spacious space that imitates reality, the distance that each avatar must move to reach the desired space tends to be relatively long. In such a case, it is useful to provide appropriate assistance so that the user can easily move his / her avatar to the desired position.
[0005] Therefore, in one aspect, an object of the present disclosure is to appropriately assist the movement of a display medium such as an avatar in a virtual space. [Means for solving the problem]
[0006] In one aspect, an information processing system is provided that includes a drawing unit that draws a display image for a terminal including one or more display media located in a virtual space, an acquisition unit that acquires input from a user, and a position change unit that changes a position of a first display medium associated with a user in the virtual space based on a first input from the user acquired by the acquisition unit, wherein the drawing unit draws guidance information indicating a positional relationship between the first display medium and a second display medium associated with another user and supplementary guidance information that supplements the guidance information, in association with the first display medium, and the supplementary guidance information includes distance information and distance change information relating to the distance between the first display medium and the second display medium, and the change mode of these is reflected in the display mode of a predetermined mark and is drawn. Effect of the Invention
[0007] According to one aspect, the present disclosure makes it possible to appropriately assist the movement of a display medium such as an avatar in a virtual space. [Brief description of the drawings]
[0008] [Figure 1] 1 is a block diagram of a virtual reality generation system according to an embodiment of the present invention. [Diagram 2] 1 is an explanatory diagram of an example of a virtual space that can be generated by a virtual reality generation system. [Diagram 3] FIG. 13 is a diagram showing an example of a terminal image. [Figure 3A] 4 is an explanatory diagram of a group information display area which is a part (part Q1) of the terminal image shown in FIG. 3. FIG. [Figure 4] FIG. 4 is an explanatory diagram of camera parameters of a virtual camera. [Diagram 5] FIG. 13 is an example of a functional block diagram of a server device related to an avatar movement guidance function. [Figure 6] FIG. 4 is an explanatory diagram of data in a user database. [Figure 7] FIG. 2 is an explanatory diagram of data in an avatar database. [Figure 8] FIG. 2 is an explanatory diagram of data in a content information storage unit. [Figure 9] FIG. 2 is an explanatory diagram of data in a ticket information storage unit. [Figure 10] FIG. 4 is an explanatory diagram of data in a group state storage unit. [Figure 11A] FIG. 11 is an explanatory diagram of an example of a terminal image including a warp region. [Figure 11B] FIG. 4 is an explanatory diagram of an example of distance information. [Figure 11C] FIG. 11 is an explanatory diagram of another example of distance information. [Figure 12] FIG. 13 is a diagram showing an example of an explanatory situation of guidance information. [Figure 13] 13 is an explanatory diagram of an example of guidance information in the situation shown in FIG. 12. [Figure 14] FIG. 11 is a diagram showing another example of an explanatory situation of guidance information. [Figure 15] FIG. 15 is an explanatory diagram of an example of guidance information in the situation shown in FIG. 14. [Figure 16] 13 is an explanatory diagram of another example of guidance information in the situation shown in FIG. 12. [Figure 17] 11 is an explanatory diagram of an example of guidance information in a situation where two preceding user avatars are located in a virtual space. FIG. [Figure 18] FIG. 11 is an explanatory diagram of an example of auxiliary information. [Figure 19] FIG. 13 is an explanatory diagram of auxiliary information guidance to the ticket booth. [Figure 20] 11 is a schematic flowchart showing an example of operations related to drawing guidance information and drawing a warp button, among various operations of the virtual reality generating system. [Figure 21] 21 is a schematic flowchart showing an example of a guidance information output process (step S2009 in FIG. 20). [Figure 22] 21 is a schematic flowchart showing an example of a warp condition determination process (step S2011 in FIG. 20). [Diagram 23] 13 is a schematic flowchart of a case where a request is sent from a user associated with a user avatar to a user associated with a friend avatar. [Figure 24]FIG. 11 is an example of a functional block diagram of a terminal device related to an avatar movement guidance function. [Diagram 25] 25 is a schematic flowchart showing an example of operation by the terminal device shown in FIG. 24, which is an example of operation related to a terminal image generating unit. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
[0010] (Overview of the Virtual Reality Generation System) An overview of a virtual reality generation system 1 according to one embodiment of the present invention will be described with reference to Fig. 1. Fig. 1 is a block diagram of the virtual reality generation system 1 according to this embodiment. The virtual reality generation system 1 includes a server device 10 and one or more terminal devices 20. For simplicity, three terminal devices 20 are shown in Fig. 1, but the number of terminal devices 20 may be two or more.
[0011] The server device 10 is, for example, a server managed by an operator that provides one or more virtual realities. The terminal device 20 is, for example, a device used by a user, such as a mobile phone, a smartphone, a tablet terminal, a PC (Personal Computer), a head-mounted display, or a game device. A plurality of terminal devices 20 can be connected to the server device 10 via the network 3, typically in a different manner for each user.
[0012] The terminal device 20 is capable of executing a virtual reality application according to this embodiment. The virtual reality application may be received by the terminal device 20 from the server device 10 or a predetermined application distribution server via the network 3, or may be stored in advance in a storage device provided in the terminal device 20 or a storage medium such as a memory card readable by the terminal device 20. The server device 10 and the terminal device 20 are communicatively connected via the network 3. For example, the server device 10 and the terminal device 20 cooperate to execute various processes related to virtual reality.
[0013] The network 3 may include a wireless communication network, the Internet, a Virtual Private Network (VPN), a Wide Area Network (WAN), a wired network, or any combination of these.
[0014] Here, an overview of the virtual reality according to the present embodiment will be described. The virtual reality according to the present embodiment is a virtual reality for any reality, such as education, travel, role-playing, simulation, entertainment such as games and concerts, and a virtual reality medium such as an avatar is used in conjunction with the execution of the virtual reality. For example, the virtual reality according to the present embodiment is realized by a three-dimensional virtual space, various virtual reality media appearing in the virtual space, and various contents provided in the virtual space.
[0015] The virtual reality medium is electronic data used in virtual reality, and includes any medium, such as cards, items, points, in-service currency (or in-virtual reality currency), tokens (e.g., Non-Fungible Token (NFT)), tickets, characters, avatars, parameters, etc. The virtual reality medium may also be virtual reality-related information, such as level information, status information, virtual reality parameter information (stamina value and attack power, etc.), or ability information (skills, abilities, spells, jobs, etc.). The virtual reality medium is electronic data that can be acquired, owned, used, managed, exchanged, synthesized, enhanced, sold, discarded, or donated by a user in virtual reality, but the usage manner of the virtual reality medium is not limited to that explicitly stated in this specification.
[0016] (Server device configuration) The configuration of the server device 10 will be specifically described. The server device 10 is composed of a server computer. The server device 10 may be realized by a plurality of server computers working together. For example, the server device 10 may be realized by a server computer that provides various contents, a server computer that realizes various authentication servers, and the like working together. The server device 10 may also include a Web server. In this case, some of the functions of the terminal device 20 described later may be realized by a browser processing an HTML document received from the Web server and various programs (Javascript) associated therewith.
[0017] The server device 10 includes a server communication unit 11, a server storage unit 12, and a server control unit 13.
[0018] The server communication unit 11 includes an interface for communicating with an external device wirelessly or wiredly and transmitting and receiving information. The server communication unit 11 may include, for example, a wireless LAN (Local Area Network) communication module or a wired LAN communication module. The server communication unit 11 is capable of transmitting and receiving information to and from the terminal device 20 via the network 3.
[0019] The server storage unit 12 is, for example, a storage device, and stores various information and programs necessary for various processes related to virtual reality. For example, the server storage unit 12 stores a virtual reality application.
[0020] The server storage unit 12 also stores data for rendering virtual spaces, such as images of indoor spaces such as buildings and outdoor spaces. Note that multiple types of data for rendering virtual spaces may be prepared for each virtual space and used separately.
[0021] The server storage unit 12 also stores various images (texture images) to be projected (texture mapping) onto various objects placed in the three-dimensional virtual space.
[0022] For example, the server storage unit 12 stores drawing information of a user avatar M1 (an example of a display medium) as a virtual reality medium associated with each user. The user is a user of the virtual reality generation system 1. In addition to general users, the users may include staff users who operate avatars in association with the operator of the virtual reality generation system 1, and guest users who provide content in the virtual space. The user avatar M1 is drawn in the virtual space based on the drawing information of the user avatar M1.
[0023] The server storage unit 12 also stores drawing information related to various objects different from the user avatar M1, such as buildings, walls, trees, NPCs (Non Player Characters), etc. Various objects are drawn in the virtual space based on the drawing information.
[0024] Hereinafter, an object corresponding to any virtual reality medium (e.g., a building, a wall, a tree, or an NPC, etc.) different from the user avatar M1 and drawn in the virtual space is also referred to as a second object M3. In this embodiment, the second object M3 may include an object fixed in the virtual space, an object movable in the virtual space, etc. Also, the second object M3 may include an object that is always placed in the virtual space, an object that is placed only when a predetermined placement condition is satisfied, etc.
[0025] The server control unit 13 may include a dedicated microprocessor or a CPU (Central Processing Unit) that realizes a specific function by reading a specific program, a GPU (Graphics Processing Unit), etc. For example, the server control unit 13 cooperates with the terminal device 20 to execute a virtual reality application in response to a user operation on the display unit 23 of the terminal device 20. The server control unit 13 also executes various processes related to virtual reality. Specific details of the processes of the server control unit 13 will be described later.
[0026] (Terminal Device Configuration) The following describes the configuration of the terminal device 20. As shown in Fig. 1, the terminal device 20 includes a terminal communication unit 21, a terminal storage unit 22, a display unit 23, an input unit 24, and a terminal control unit 25.
[0027] The terminal communication unit 21 includes an interface for communicating with an external device wirelessly or wiredly and transmitting and receiving information. The terminal communication unit 21 may include a wireless communication module, a wireless LAN communication module, or a wired LAN communication module that supports mobile communication standards such as LTE (Long Term Evolution) (registered trademark), LTE-A (LTE-Advanced), a fifth generation mobile communication system, and UMB (Ultra Mobile Broadband). The terminal communication unit 21 is capable of transmitting and receiving information to and from the server device 10 via the network 3.
[0028] The terminal storage unit 22 includes, for example, a primary storage device and a secondary storage device. For example, the terminal storage unit 22 may include a semiconductor memory, a magnetic memory, an optical memory, or the like. The terminal storage unit 22 stores various information and programs used in the processing of virtual reality received from the server device 10. The information and programs used in the processing of virtual reality may be acquired from an external device via the terminal communication unit 21. For example, a virtual reality application program may be acquired from a predetermined application distribution server. Hereinafter, the application program is also simply referred to as an application. In addition, for example, some or all of the above-mentioned information about the user and information about the virtual reality media of other users may be acquired from the server device 10.
[0029] The display unit 23 includes a display device such as a liquid crystal display or an organic EL (Electro-Luminescence) display. The display unit 23 is capable of displaying a variety of images. The display unit 23 is configured with, for example, a touch panel, and functions as an interface that detects a variety of user operations. The display unit 23 may be in the form of a head-mounted display.
[0030] The input unit 24 includes an input interface including, for example, a touch panel provided integrally with the display unit 23. The input unit 24 can accept user input to the terminal device 20. The input unit 24 may include physical keys, or may further include any input interface including a pointing device such as a mouse. The input unit 24 may also be capable of accepting non-contact user input such as voice input or gesture input. For gesture input, a sensor (such as an image sensor, an acceleration sensor, or a distance sensor) for detecting the user's body movement may be used.
[0031] The terminal control unit 25 includes one or more processors. The terminal control unit 25 controls the operation of the entire terminal device 20.
[0032] The terminal control unit 25 transmits and receives information via the terminal communication unit 21. For example, the terminal control unit 25 receives various information and programs used for various processes related to virtual reality from at least one of the server device 10 and another external server. The terminal control unit 25 stores the received information and programs in the terminal storage unit 22. For example, the terminal storage unit 22 may store a browser (Internet browser) for connecting to a Web server.
[0033] The terminal control unit 25 starts a virtual reality application in response to a user's operation. The terminal control unit 25 cooperates with the server device 10 to execute various processes related to virtual reality. For example, the terminal control unit 25 causes the display unit 23 to display an image of a virtual space. For example, a GUI (Graphic User Interface) for detecting a user operation may be displayed on the screen. The terminal control unit 25 can detect a user operation on the screen via the input unit 24. For example, the terminal control unit 25 can detect a user's tap operation, a long tap operation, a flick operation, a swipe operation, and the like. A tap operation is an operation in which a user touches the display unit 23 with a finger and then releases the finger. The terminal control unit 25 transmits operation information to the server device 10.
[0034] (Example of virtual space) The server control unit 13 cooperates with the terminal device 20 to display an image of the virtual space on the display unit 23, and updates the image of the virtual space in response to the progress of the virtual reality and the user's operations. In this embodiment, the server control unit 13 cooperates with the terminal device 20 to render objects placed in the three-dimensional virtual space as viewed from a virtual camera placed in the virtual space.
[0035] The drawing process described below is realized by the server control unit 13, but in other embodiments, a part or all of the drawing process described below may be realized by the server control unit 13. In the following description, at least a part of the image of the virtual space displayed on the terminal device 20 may be a web display displayed on the terminal device 20 based on data generated by the server device 10, and at least a part of the image may be a native display displayed by a native application installed on the terminal device 20.
[0036] FIG. 2 is an explanatory diagram of an example of a virtual space that can be generated by the virtual reality generation system 1. As shown in FIG.
[0037] In this embodiment, the virtual space may include a plurality of spatial parts. Each of the plurality of spatial parts is a spatial part into which the user avatar M1 can enter, and each of the plurality of spatial parts may be capable of providing its own content. Each of the plurality of spatial parts may be generated in a manner that forms a space that is continuous with each other in the virtual space, similar to various spaces in reality. Alternatively, some or all of the plurality of spatial parts may be discontinuous with each other. Discontinuity is a relationship that is connected in a manner that violates the physical laws in reality, for example, a relationship between spatial parts that can be moved in a manner of instantaneous movement such as warp.
[0038] 2, the virtual space includes a space section 70 for providing a plurality of contents, and a free space section 71. In the free space section 71, the user avatar M1 can basically move freely. Note that content (for example, various contents to be described later, such as those provided in the space section 70) may be provided in the free space section 71 as appropriate.
[0039] The space section 70 may be a space section at least partially separated from the free space section 71 by a wall (an example of the second object M3) or a movement prohibition section (an example of the second object M3). For example, the space section 70 may have an entrance / exit (e.g., a second object M3 such as a hole or a door) through which the user avatar M1 can enter and exit the free space section 71. In the space section 70, content may be provided to the user avatar M1 located in the space section 70.
[0040] The types and number of contents (contents provided in virtual reality) provided in the space unit 70 are arbitrary. In the present embodiment, as an example, the contents provided in the space unit 70 include digital contents such as various types of video. The video may be real-time video or non-real-time video. The video may be video based on a real image or video based on CG (Computer Graphics). The video may be video for providing information. In this case, the video may be related to an information providing service in a specific genre (information providing service related to travel, housing, food, fashion, health, beauty, etc.), a broadcasting service by a specific user (for example, Youtube (registered trademark)), etc.
[0041] The content provided in the space section 70 may be various items (an example of the second object M3) that can be used in the virtual space. In this case, the space section 70 that provides the various items may be in the form of a sales outlet. Alternatively, the content provided in the space section 70 may be an acquisition right or a token for an item that is available in reality. Some of the multiple space sections 70 may be space sections that do not provide content.
[0042] Each of the space sections 70 may be operated by a different entity, similar to a real-world store. In this case, the operator of each space section 70 may use the corresponding space section 70 by paying a store opening fee or the like to the operator of the virtual reality generation system 1.
[0043] The virtual space may be expandable as the number of space sections 70 increases. Alternatively, a plurality of virtual spaces may be set for each attribute of the content provided in the space section 70. In this case, the virtual spaces may be discontinuous or continuous with each other as "space sections."
[0044] (Drawing function in virtual space) The server control unit 13 cooperates with the terminal device 20 to display a display image for the terminal (hereinafter, also simply referred to as a "terminal image") on the display unit 23, and updates the terminal image. In a modified example, the terminal image may be drawn by the terminal device 20 (see FIG. 24, etc.).
[0045] FIG. 3 is an explanatory diagram of a terminal image, and shows an example of the terminal image. In FIG. 3, a part of the virtual space is drawn together with a user avatar M1 (user name "User A"). The terminal image may be drawn as an image from a virtual camera 60 arranged in the virtual space. In this case, the virtual camera 60 may be set for each user avatar M1. Furthermore, the virtual camera 60 may include a camera installed at a fixed point in addition to a camera for each user avatar M1.
[0046] FIG. 4 is an explanatory diagram of camera parameters of the virtual camera 60. FIG. 4 shows a field surface 40 positioned in a global coordinate system. The global coordinate system is a coordinate system fixedly associated with a virtual space. Unless otherwise specified, the field surface 40 represents the field surface 40 in a state in which a field image is projected (the field surface 40 of a field object). The field surface 40 represents a field in a virtual space. For each of two or more discontinuous space parts, a field surface 40 that is discontinuous with each other in the global coordinate system may be set.
[0047] In this embodiment, the camera parameters include two position parameters (X, Y), a distance parameter A2, a direction parameter θ, and an angle-of-attack parameter ψ. When the values of all these parameters are determined, the virtual camera 60 can be uniquely positioned with respect to the global coordinate system. When the angle-of-attack parameter ψ is approximately 90 degrees, a bird's-eye view is possible.
[0048] The position parameter X is the x coordinate of the intersection of the line of sight V on the xy plane, the position parameter Y is the y coordinate of the intersection of the line of sight V on the xy plane, and the distance parameter A2 is the distance from the intersection of the line of sight V on the xy plane to the virtual camera 60 (the distance along the line of sight V). The orientation parameter θ is the angle between the x-axis and the projection vector V' on the xy plane of the line of sight V. The angle of attack parameter ψ is the angle between the line of sight V and the xy plane. Note that in this embodiment, the angle of attack parameter ψ is used, but the angle of attack parameter ψ may be omitted. In other words, the angle of attack parameter ψ may have a constant value (fixed value).
[0049] Some or all of the values of the various camera parameters may be changed in conjunction with the values of parameters related to the user avatar M1 (e.g., the position or state of the user avatar M1) and / or may be changed according to an input from the user. For example, the values of the two position parameters (X, Y) may correspond to the position of the user avatar M1. Note that such camera parameters are merely an example, and different parameters may be used equivalently in actual processing. For example, the camera parameters may include height with respect to the xy plane and rotation parameters around three orthogonal axes (i.e., yaw, roll, and pitch). The camera parameters may also include other parameters such as focal length.
[0050] (Details of the avatar navigation function) In this embodiment, the virtual space can also function as a place for users to interact with each other via the user avatar M1. In this case, for example, a plurality of users can make an appointment in advance and receive the provision of content in a specific space section 70 at a predetermined time. In this case, a plurality of users can interact with each other through the provision of content. Alternatively, a plurality of users can make an appointment in advance and gather in a specific space section 70 at a predetermined time to enjoy conversation (chat, etc.).
[0051] However, unlike reality, virtual reality allows for relatively free design of virtual space, and for example, it is possible to design a virtual space as a space with a large area that imitates reality. In this case, a relatively large number of spatial parts can be arranged in the virtual space, and a large-scale virtual space such as a mall can be constructed, and the ability to attract customers to the virtual space (the number and frequency of user avatars M1 visiting the virtual space) can be increased.
[0052] However, when the virtual space is designed to be a spacious space that imitates reality, the distance each avatar must travel to reach the desired space tends to be relatively long. In such a case, it is useful to be able to assist the user avatar M1 to easily reach the desired space.
[0053] Therefore, in this embodiment, the virtual reality generation system 1 has an avatar movement guidance function that assists or guides the user avatar M1 to easily reach the desired space or the desired position within the space, as described in detail below.
[0054] In the following, the server device 10 associated with the avatar movement guidance function realizes an example of an information processing system, but as described later, each element of a specific terminal device 20 (see the terminal communication unit 21 to the terminal control unit 25 in FIG. 1) may realize an example of an information processing system, or a plurality of terminal devices 20 may cooperate to realize an example of an information processing system. Also, the server device 10 and one or more terminal devices 20 may cooperate to realize an example of an information processing system.
[0055] FIG. 5 is an example of a functional block diagram of the server device 10 related to the avatar movement guidance function. FIG. 6 is an explanatory diagram of data in the user database 140. FIG. 7 is an explanatory diagram of data in the avatar database 142. FIG. 8 is an explanatory diagram of data in the content information storage unit 144. FIG. 9 is an explanatory diagram of data in the ticket information storage unit 145. FIG. 10 is an explanatory diagram of data in the group status storage unit 146. In FIG. 6 to FIG. 10, "***" indicates a state in which some information is stored, "-" indicates a state in which no information is stored, and "..." indicates a similar repetition.
[0056] As shown in Fig. 5, the server device 10 includes a user database 140, an avatar database 142, a content information storage unit 144, a ticket information storage unit 145, a group state storage unit 146, a group setting unit 150, a user avatar processing unit 152, a terminal image generating unit 158, a content processing unit 159, a dialogue processing unit 160, a first movement authority processing unit 162, a second movement authority processing unit 164, a judgment processing unit 166, and a parameter update unit 170. Note that some or all of the functions of the server device 10 described below may be appropriately realized by the terminal device 20 (see Fig. 25). Also, the division from the user database 140 to the group state storage unit 146 and the division from the group setting unit 150 to the parameter update unit 170 are for convenience of explanation, and some functional units may realize the functions of other functional units. For example, each function of the group setting unit 150, the user avatar processing unit 152, the terminal image generation unit 158, the content processing unit 159, and the dialogue processing unit 160 may be realized by the terminal device 20. Also, for example, a part or all of the data in the user database 140 may be integrated with the data in the avatar database 142, or may be stored in a separate database.
[0057] Note that the user database 140 to the group state storage unit 146 can be realized by the server storage unit 12 shown in Fig. 1, and the group setting unit 150 to the parameter update unit 170 can be realized by the server control unit 13 shown in Fig. 1. Also, a part of the group setting unit 150 to the parameter update unit 170 (functional units that communicate with the terminal device 20) can be realized by the server communication unit 11 together with the server control unit 13 shown in Fig. 1.
[0058] User information is stored in the user database 140. In the example shown in Fig. 6, the user information includes user information 600 relating to a user.
[0059] In the user information 600, each user ID is associated with a user name, user authentication information, user avatar ID, position / orientation information, friend information, etc. The user name is a name registered by the user himself / herself and is arbitrary. The user authentication information is information for indicating that the user is a legitimate user and may include, for example, a password, an email address, a date of birth, a password, biometric information, etc. The friend information may include information (for example, a user ID) that identifies a user in a friend relationship.
[0060] The user avatar ID is an ID for identifying a user avatar. In this embodiment, one user avatar ID is associated with each user ID. Therefore, in the following description, "associated with a user (or a user ID)" or a similar expression is synonymous with "associated with a user avatar ID" or a similar expression. However, in other embodiments, multiple user avatar IDs may be associated with one user ID.
[0061] The position / orientation information includes position information and orientation information of the user avatar M1. The orientation information may be information representing the facial orientation of the user avatar M1. Note that the position / orientation information, etc., is information that can change dynamically in response to an operation input from the user. In addition to the position / orientation information, information representing the movement of the user avatar M1's limbs, etc., facial expressions (e.g., mouth movement), the orientation and gaze direction of the face and head (e.g., eye direction), and information representing an object indicating an orientation or coordinates in space, such as a laser pointer, may be included.
[0062] The avatar database 142 stores avatar information relating to the user avatar M1.
[0063] In the example shown in FIG. 7, in the avatar information 700, each user avatar ID is associated with a face part ID, a hairstyle part ID, a clothing part ID, and the like. The part information related to appearance, such as the face part ID, hairstyle part ID, and clothing part ID, is a parameter that characterizes the user avatar M1, and may be selected by each corresponding user. For example, a plurality of types of information related to appearance, such as the face part ID, hairstyle part ID, and clothing part ID, related to the user avatar M1, are prepared. In addition, with regard to the face part ID, a part ID is prepared for each type, such as face shape, eyes, mouth, and nose, and the information related to the face part ID may be managed as a combination of IDs of each part constituting the face. In this case, it becomes possible to draw each user avatar M1 not only on the server device 10 but also on the terminal device 20 side based on each ID related to appearance linked to each avatar ID.
[0064] Various kinds of content information related to content that can be provided in the virtual space are stored in the content information storage unit 144. For example, for each piece of content, the content providing position (e.g., the ID of the space part), the content, etc. are stored.
[0065] In the example shown in FIG. 8, content information 800 associates each content ID with a content providing location (indicated as "providing location" in FIG. 8), content details (indicated as "details" in FIG. 8), and the like.
[0066] The content providing position is a position in the virtual space, and includes a position where the user can receive the provision of content via the content processing unit 159. That is, the content providing position includes a position where the user can receive the provision of content. The content providing position may be defined by the coordinate value of a single point, but typically may be defined by a plurality of coordinate values forming a grouped area or space. The content providing position may be a position on a plane, or may be a position in space (i.e., a position expressed in a three-dimensional coordinate system including a height direction). Note that a unit of content associated with one content providing position is one content (one unit of content). Therefore, for example, even if two types of videos can be viewed at one content providing position, the two types of videos as a whole are one content.
[0067] The content details may include information such as the content name, summary, and creator.
[0068] The content information storage unit 144 may further store information indicating conditions that must be met to receive each content at each content providing location (hereinafter, also referred to as "content providing conditions"). The content providing conditions may be set for each content ID. The content providing conditions may be set based on the providing time, whether or not a ticket is required, age, etc.
[0069] The ticket information storage unit 145 stores ticket information (an example of authority information) related to the ticket. A ticket is a virtual reality medium that represents a movement authority for the user avatar M1 to move to a content providing position (for example, one or more positions in the space) in the virtual space (and thus, an authority to receive the provision of content at the content providing position). Note that a ticket management screen displayed by operating a ticket management button 303 described later with reference to FIG. 3 and a ticket status 1880 in a group information display area 3000 described later with reference to FIG. 18 may be generated based on the data in the ticket information storage unit 145.
[0070] In the example shown in FIG. 9, the ticket information 900 associates a ticket ID with a content providing location, an owner ID, purchase information, authentication information for transfer, transfer information, a validity flag, and the like.
[0071] The ticket ID is a unique ID assigned to each ticket.
[0072] The content provision position represents a position in a virtual space where a user can be located based on the movement authority related to the ticket. The content provision position includes a position where the user can receive the provision of content. The content provision position may be defined by the coordinate value of a single point, but typically may be defined by a plurality of coordinate values forming a grouped area or space. The content provision position may also be a position on a plane or a position in space (i.e., a position expressed in a three-dimensional coordinate system including a height direction). The content provision position may typically be set for each piece of content according to the provision position and attributes of the content.
[0073] 9 is suitable for the case where a plurality of types of content providing positions are associated with each other, such as the plurality of spatial portions 70 shown in Fig. 2. When there is only one type of content providing position, the content providing position in the ticket information 900 may be omitted.
[0074] The owner ID corresponds to the user ID of the user who currently owns the ticket. Since tickets are transferable as described above, the owner ID may change later.
[0075] The purchase information indicates a purchaser ID, a purchase date and time, a purchase method, etc. The purchaser ID is a user ID associated with the user who made the purchase input.
[0076] The authentication information for transfer is authentication information required for transfer, and is different for each ticket ID.
[0077] The transfer information indicates whether or not one or more transfers have occurred, and may further indicate the transfer date and time, etc. In Fig. 9, "-" indicates that no transfer has occurred.
[0078] The validity flag is flag information indicating the validity of the ticket. In the present embodiment, as an example, when the validity flag is "1", it indicates that the ticket is valid, and when the validity flag is "0", it indicates that the ticket is invalid. The state in which the ticket is valid corresponds to a state in which the user avatar M1 associated with the ticket can move to the content provision location associated with the ticket (and accordingly, a state in which specific content can be provided at the content provision location).
[0079] The validity of the ticket may be set for each attribute of the ticket. For example, a ticket with a certain attribute may be invalidated when the corresponding user avatar M1 (e.g., the user avatar M1 associated with the purchaser ID) reaches the content provision position (or immediately thereafter, when the ticket reaches the content provision position). A ticket with another attribute may be invalidated when a predetermined time has elapsed since the corresponding user avatar M1 reaches the content provision position. A ticket with another attribute may be invalidated when the corresponding user avatar M1 leaves the content provision position after reaching the content provision position. Alternatively, a mechanism that allows re-entry with the same ticket may be further realized. In this case, the validity of the ticket may be maintained until a predetermined time has elapsed since the corresponding user avatar M1 reaches the content provision position. Alternatively, the validity of the ticket may be invalidated when movement (entry) to the content provision position a predetermined number of times or more is detected.
[0080] The group state storage unit 146 stores group state information related to the state of a group active in the virtual space. Groups are set by the group setting unit 150, which will be described later. In the example shown in FIG. 10, the group state information 1000 associates each group ID with a corresponding group name and user ID (user ID related to a user belonging to the corresponding group). Note that one group ID may be associated with multiple user IDs. Note that a group may be called a party.
[0081] The group setting unit 150 sets a group consisting of one or more users who will interact in the virtual space. For example, when each user enters the virtual space via the user avatar M1, the user inputs a group name. In this case, the group setting unit 150 may set a group ID for each group name, and set users who input the same virtual space name as the same group. In this case, a virtual space may be generated for each group so that each user in the group can share one virtual space. As a result, for example, multiple users who wish to interact in the virtual space can interact in a common virtual space without interacting with other users (users in different groups) by inputting a common virtual space name notified to each other in advance. In addition, since the virtual space can be managed for each group, the amount of information of other users transmitted to the terminal device 20 associated with one user can be reduced compared to the case where one virtual space is shared by many users, and the communication load of the virtual reality generation system 1 as a whole can be reduced. In addition, in a modified example, one virtual space may be available to users belonging to multiple groups at the same time. In the following, unless otherwise specified, each user avatar M1 belongs to the same group.
[0082] Furthermore, when a user enters a virtual space via a user avatar M1, the group setting unit 150 may cooperate with the terminal image generating unit 158 to display group information currently being set on the terminal device 20 associated with the user. In this case, the group information may include information representing the group name and its members (user names, etc.). The display of the group name may also function as a selection button. In this case, a user who finds a display of a desired group name can easily join the desired group by operating the corresponding selection button. Note that permission from a user who is a member of the group may be required to join the group.
[0083] In another embodiment, the group setting unit 150 may assign each user to one of the multiple groups without being based on an input from the user. In this case, the assignment may be realized so that the number of users belonging to one group is equalized. This makes it possible to equalize the balance of the processing load for each group. In this case, the group setting unit 150 may assign users who enter the room close to each other to the same group, or may realize the assignment according to the attribute information of the user (age, sex, preferences, etc.).
[0084] The user avatar processing unit 152 executes various processes related to each user avatar M1. The user avatar processing unit 152 includes an operation input acquisition unit 1521 (an example of an acquisition unit) and a user operation processing unit 1522 for each user avatar M1.
[0085] The operation input acquisition unit 1521 acquires operation input information generated in response to various operations by the user. Note that the operation input information by the user is generated via the input unit 24 of the terminal device 20 described above.
[0086] In this embodiment, the operation input information may include an operation input (an example of a first input) that changes the position of the user avatar M1 in the virtual space, an operation input that changes values of other parameters (parameters other than movement) such as the orientation of the user avatar M1, an operation input generated via a user interface drawn by the user interface drawing unit 1582, and a voice or text input used in the dialogue processing unit 160. The operation input generated via a user interface includes a warp input (an example of a second input) that is generated via a warp button 1800 described later.
[0087] An operation input that changes the position of the user avatar M1 in the virtual space is an operation input that moves the user avatar M1, and is hereinafter also referred to as a "movement operation input." An operation input that changes the values of other parameters (parameters other than movement) such as the orientation of the user avatar M1 is hereinafter also referred to as an "avatar-related input." The movement operation input and avatar-related input may be generated by operating a specific key (e.g., the "WASD" keys), may be generated via a user interface including arrow buttons, or may be generated by movements such as voice and gestures.
[0088] In this embodiment, the user movement processing unit 1522 includes a basic movement processing unit 15221 (an example of a position changing unit), a first warp processing unit 15222, and a second warp processing unit 15223.
[0089] The basic action processing unit 15221 determines the position and orientation of each user avatar M1 in the virtual space based on the operation input information (movement operation input and avatar-related input) acquired by the operation input acquisition unit 1521. The position / orientation information of each user avatar M1 determined (generated) by the basic action processing unit 15221 may be stored (updated) in association with the corresponding user ID, for example (see FIG. 6). The basic action processing unit 15221 may also determine various movements of the hands, face, and the like of the user avatar M1 based on the operation input information. In this case, the information on such movements may also be stored (updated) together with the position / orientation information of the user avatar M1.
[0090] When one user avatar M1 moves to a warp area (one example of a predetermined area) in the virtual space, the first warp processing unit 15222 performs a process (hereinafter referred to as "first warp process") of moving the one user avatar M1 to a first predetermined position that is at least a predetermined distance D1 away from the warp area, or to a first predetermined position in a space part different from the space part to which the warp area belongs. Note that the first warp process on the one user avatar M1 involves changing at least the position information of the position / orientation information of the one user avatar M1.
[0091] In this case, the predetermined distance D1 is a relatively large distance, and may be, for example, significantly larger than the maximum distance that the user avatar M1 can move by only moving operation input per time period corresponding to the processing time of the first warp process. The distance determined by the predetermined distance D1 (the distance from the warp area to the first predetermined position) may be a straight-line distance or a distance along the moving path of the user avatar M1.
[0092] In this embodiment, the first predetermined position is set as another warp area. That is, in this embodiment, the user avatar M1 can move in a manner of directly going back and forth between two warp areas. Note that the time required to directly go back and forth between two warp areas is significantly shorter than the time required to move the user avatar M1 over the distance between the two warp areas based on a movement operation input. This allows the user to realize efficient movement by using the warp area. Note that, in a modified example, the first predetermined position may not be a warp area, and only one-way warping may be possible. Note that multiple warp areas may be set, and only some of the warp areas may be capable of realizing only one-way warping.
[0093] FIG. 11A shows an example of a terminal image including a warp area 1100 in the virtual space shown in FIG. 2. The position of the warp area 1100 may be fixed, or the position may be changed as appropriate. The warp area 1100 may appear when a predetermined appearance condition is satisfied. A destination from the warp area 1100 may be set for each warp area 1100. Note that the destination from the warp area 1100 does not necessarily have to be a space part (e.g., a discontinuous space part) different from the space part to which the current position belongs, and may be set within the same space part as the space part to which the current position belongs.
[0094] In this embodiment, as described above, a warp area corresponding to one warp area 1100 is set in a destination space or the like in such a manner that two warp areas can be directly moved between. In this case, bidirectional movement via the warp area is possible. For example, FIG. 2 shows a pair of warp areas 1100-1 and 1100-2 in a schematic manner. In this case, when moving into one of the warp areas 1100-1 and 1100-2, instantaneous movement (hereinafter referred to as "teleportation") to the other warp area can be realized. The teleportation between two points (for example, the teleportation between the pair of warp areas 1100-1 and 1100-2) is a movement mode that cannot be realized in reality, and refers to a movement mode in which the user avatar M1 can move between two points in a time significantly shorter than the minimum time required when moving the user avatar M1 between the two points by a movement operation input, for example.
[0095] 2, the two warp regions 1100 are set within the free space section 71, but some or all of the multiple warp regions may be set within the space section 70. Also, there are two or more destinations to which one warp region can be teleported, and these may be selectable by the user or may be selected randomly.
[0096] When one user avatar M1 is located within a specific area in the virtual space, the second warp processing unit 15223 performs a process (hereinafter referred to as a "second warp process") of moving the user avatar M1 to a second predetermined position in response to a warp input from a user associated with the one user avatar M1 (i.e., a user operating the one user avatar M1). In this case, the second predetermined position may be set within a space portion to which the specific area belongs, or may be set within a space portion different from the space portion to which the specific area belongs. The second predetermined position may be fixed or variable. Note that the second warp process for the one user avatar M1 involves changing at least the position information of the position / orientation information of the one user avatar M1.
[0097] In this embodiment, the second predetermined position is set for each user avatar M1. The second predetermined position set for one user avatar M1 may be set according to the position of another user avatar M1 having a predetermined relationship with the one user avatar M1. The predetermined relationship is arbitrary, but in this embodiment, as an example, it includes a relationship of belonging to the same group set by the group setting unit 150. In other embodiments, from the same viewpoint, the predetermined relationship may include a friend relationship. Hereinafter, the other user avatar M1 having a predetermined relationship with the one user avatar M1 is also referred to as a "friend avatar."
[0098] In this case, the second predetermined position set for the one user avatar M1 may be set within a predetermined distance D2 from the position of the friend avatar. In this case, the predetermined distance D2 is a relatively small distance, and may be, for example, a distance at which the friend avatar is drawn immediately after the second warp process in the terminal image for the user related to the one user avatar M1. In this case, the one user avatar M1 can teleport close to the friend avatar. In this case, the origin position of the one user avatar M1 may be a position within the space where the friend avatar is located, or may be a position within a space different from the space where the friend avatar is located. In addition, the second predetermined position to which the one user avatar M1 is moved may be any position within the predetermined distance D2 from the position of the friend avatar, but may have a predetermined positional relationship with the position of the friend avatar, such as within the predetermined distance D2 from the position of the friend avatar and behind or to the side of the friend avatar.
[0099] According to such second warp processing, even if it is difficult for the user to move his / her own user avatar M1 close to the friend avatar by inputting a movement operation, the user can move the user avatar M1 close to the friend avatar by simply operating the warp button 1800 described later, thereby improving convenience. Such convenience is particularly noticeable when the virtual space is large and a large number of spatial portions are arranged in the virtual space. In addition, according to the second warp processing, since it is possible to omit the drawing process of drawing the relatively long movement process of the user avatar M1 by inputting a movement operation, it is also possible to obtain an effect of reducing the processing load. In addition, in the terminal device 20, the processing load related to drawing and the associated power consumption (reduction in the charge state of the power source) can be reduced.
[0100] While the second warp process can thus reduce the load of movement operation input by the user (and the associated load of the drawing process), it also has the downside of reducing the opportunities for new discoveries when the user avatar M1 moves within the virtual space (e.g., the appearance of a new space section, or changes to the second object M3 such as decorations) and the opportunities to provide various types of necessary or useful information in the free space section 71 (e.g., content related to tutorials or advertisements in the free space section 71, the second object M3, the newly created space section 70, etc.).
[0101] Therefore, the second warp process may be executable when a predetermined warp condition is satisfied. The predetermined warp condition is arbitrary, but may be adapted to be satisfied, for example, when the load of the movement operation input by the user becomes relatively high. For example, the predetermined warp condition may be satisfied when the distance to the friend avatar is a predetermined distance D3 or more, or when the friend avatar is located in a different space from the user avatar M1 (user avatar M1 that may be the target of the second warp process). The distance of the user avatar M1 to the friend avatar may be calculated based on the position information of the position / orientation information of each user avatar M1.
[0102] The terminal image generating unit 158 renders each virtual reality medium (e.g., user avatar M1) movable in the virtual space, etc. Specifically, the terminal image generating unit 158 generates a terminal image to be displayed on the terminal device 20 of each user based on the avatar information 700 (see FIG. 7) and the position / orientation information of each user avatar M1, etc.
[0103] For example, the terminal image generating unit 158 generates, for each user avatar M1, an image (terminal image) to be displayed on the terminal device 20 related to the user associated with the user avatar M1, based on the position / orientation information of the user avatar M1. Specifically, based on the position / orientation information of the user avatar M1, the terminal image generating unit 158 generates, as the terminal image, an image of the virtual space viewed from the virtual camera 60 at a position and orientation corresponding to the position / orientation information. In this case, the position / orientation information related to each user avatar M1 is different from each other, so the terminal image is different for each user associated with each user avatar M1. In the following, taking this into consideration, the terminal image generated based on the position / orientation information of the user avatar M1 related to a certain user may be referred to as the terminal image for the user. In the following, unless otherwise specified, the function of the terminal image generating unit 158 when generating the terminal image related to one user (and the user avatar M1 associated with the user) will be described, but the function is substantially the same when generating the terminal image related to another user.
[0104] The terminal image generating unit 158 may have a plurality of modes, such as a first-person perspective mode and a third-person perspective mode. For example, in the first-person perspective mode, the terminal image generating unit 158 adjusts the position and orientation (each value of the camera parameters) of the virtual camera 60 to a position and orientation corresponding to the position / orientation information of one user avatar M1. In this case, the field of view of the virtual camera 60 substantially coincides with the field of view of the one user avatar M1. Note that in this case, the user avatar M1 is not reflected in the field of view from the virtual camera 60.
[0105] On the other hand, in the third-person perspective mode, the terminal image generation unit 158 adjusts the position of the virtual camera 60 to a position slightly away from the position of the one user avatar M1. At this time, the terminal image generation unit 158 may appropriately determine the values of other camera parameters of the virtual camera 60 according to the orientation of the position / orientation information of the one user avatar M1, the situation in the virtual space, and the like. At this time, the position of the virtual camera 60 may be set to a position slightly away behind or to the side of the user avatar M1 so as to generate a terminal image in which the user avatar M1 is reflected.
[0106] In other modes, the values of various camera parameters of the virtual camera 60 may be arbitrarily adjustable by the corresponding user. When generating such a terminal image, the terminal image generating unit 158 may execute various processes (e.g., a process of bending a field object, etc.) to create a sense of depth. When generating a terminal image showing the user avatar M1, the user avatar M1 may be drawn in a relatively simple form (e.g., in the form of a two-dimensional sprite) to reduce the load of the drawing process.
[0107] When another user avatar M1 is located within the field of view of the virtual camera 60, the terminal image generating unit 158 generates a terminal image including the other user avatar M1. In this case, however, in order to reduce the load of the drawing process, the other user avatar M1 may be drawn in a relatively simple manner (for example, in the form of a two-dimensional sprite).
[0108] The terminal image generating unit 158 may draw each user avatar M1 in association with a user name (for example, "User A" in FIG. 3). This allows each user to identify the user avatar M1 related to a desired user based on the user name. Note that the user name may be made invisible based on a setting made by the user.
[0109] In this embodiment, the terminal image generation unit 158 includes a base image drawing unit 1581 , a user interface drawing unit 1582 , a guide information drawing unit 1583 , an auxiliary information drawing unit 1584 , a warp operation drawing unit 1585 , and a spatial transition drawing unit 1586 .
[0110] The base image drawing unit 1581 draws the basic part of the terminal image as described above. That is, the base image drawing unit 1581 draws the basic part before the drawings by the user interface drawing unit 1582, the guidance information drawing unit 1583, and the auxiliary information drawing unit 1584 are superimposed. For example, the base image drawing unit 1581 draws the virtual space itself (a part excluding the second object M3, etc.) and various objects in the virtual space (user avatar M1, second object M3, etc.) within the field of view from the virtual camera 60 based on the drawing information of the virtual space, the values of each camera parameter of the virtual camera 60, the position / orientation information of each user avatar M1, the arrangement information of the second object M3, etc. Note that the drawing information of the virtual space may be prepared in advance, or may be updated afterwards or dynamically. Each position in the virtual space may be defined in a global coordinate system (see FIG. 4). Note that the drawing method of the virtual space is arbitrary, and may be realized by mapping a field object or a background object onto an appropriate plane or curved surface, for example.
[0111] The user interface drawing unit 1582 draws a user interface that allows the user to perform various operations. Items that can be operated via the user interface are arbitrary. For example, in the example shown in Fig. 3, the user interface 300 includes a chair button 301, a like button 302, a ticket management button 303, a friend management button 304, and an exit button 305. In addition, in the example shown in Fig. 3, the terminal image includes an interaction interface 309, which is another user interface.
[0112] The chair button 301 is operated when the user avatar M1 is seated in the virtual space. For example, each user can use the chair button 301 when he or she wants to have a thorough conversation through the user avatar M1. In this case, when the user avatar M1 is seated, the sound in the virtual space (for example, a specific piece of music that is constantly being played, etc.) may be turned off, and only voice chat (conversation by voice) may be possible.
[0113] The like button 302 is operated when giving a good evaluation or a gift to another user avatar M1 via the user avatar M1.
[0114] A ticket management button 303 is operated when outputting a ticket management screen (not shown) on which various ticket states described later can be viewed. The ticket management screen may be set with a further user interface that allows input of transfer, request, input of authentication information for transfer, etc., described later.
[0115] The friend management button 304 is operated when outputting a friend management screen (not shown) related to other user avatars M1 with whom the user has a friend relationship.
[0116] The exit button 305 is operated when making the user avatar M1 exit the virtual space.
[0117] Furthermore, in this embodiment, the user interface drawing unit 1582 draws a warp button 1800 (an example of a first operation unit) (see FIG. 3A). The warp button 1800 is operated when performing instantaneous movement by the second warp processing of the second warp processing unit 15223 described above. In other words, the warp button 1800 is operated when generating a warp input.
[0118] The warp button 1800 may be drawn at any position on the terminal image, but is preferably drawn in association with the corresponding friend avatar. For example, the warp button 1800 for teleporting to the vicinity of one friend avatar is drawn in association with that one friend avatar. This allows the user to easily identify the warp button 1800 for teleporting to the vicinity of a desired friend avatar even when there are multiple friend avatars.
[0119] FIG. 3A shows a group information display area 3000, which is a part (Q1 part) of the terminal image shown in FIG. 3. The group information display area 3000 may be capable of being displayed in full screen by, for example, a user operation (for example, a tap operation). The group displayed in the group information display area 3000 corresponds to the group set by the group setting unit 150. The group information display area 3000 includes avatar icons 350, 351, 352 of each user avatar M1 in the same group. Each of the avatar icons 350, 351, 352 is associated with a corresponding user name (for example, “User A”, “User B”, etc.). In this case, the warp button 1800 is drawn in association with each of the avatar icons 351, 352 of the corresponding friend avatar (in this case, “User B” and “User C” for the user “User A”).
[0120] The user interface drawing unit 1582 may draw the warp button 1800 in an operable display mode when a predetermined warp condition is satisfied, and may draw the warp button 1800 in an inoperable display mode when the predetermined warp condition is not satisfied. For example, the warp button 1800 may be drawn in a significantly lower brightness (or a color different from normal) in an inoperable display mode than in an operable display mode (see warp button 1800-1 in FIG. 18 described later). In this case, the user can easily understand whether the warp button 1800 is in an active state or not. When the user operates the warp button 1800 drawn in an operable display mode, a warp input is normally generated and acquired by the operation input acquisition unit 1521. Also, when the user operates the warp button 1800 drawn in an inoperable display mode, no warp input is generated.
[0121] As described above, the predetermined warp condition may be adapted to be satisfied when, for example, the load of movement operation input by the user becomes relatively high. In this case, when there are multiple friend avatars, the predetermined warp condition may be determined for each friend avatar.
[0122] In this embodiment, as an example, the predetermined warp condition is satisfied when the user avatar M1 is located in a specific area in the virtual space, a friend avatar exists in the virtual space, and an invalidation instruction is not generated from the invalidation processing unit 1662 described later. The specific area may be set for each friend avatar so as to be significantly farther away than the second predetermined position for each friend avatar, but in this embodiment, the specific area is an arbitrary position in the virtual space. In this case, as long as the user avatar M1 is located in the virtual space, it will be located in the specific area (i.e., the current position of the user avatar M1 is always included in the specific area). This allows the predetermined warp condition to be established regardless of the position of the user avatar M1, thereby reducing the processing load for determining the predetermined warp condition. In addition, from the user's perspective, it becomes possible to perform instantaneous movement by the second warp process at the current position, which improves convenience compared to a specification in which instantaneous movement cannot be performed unless the user avatar M1 is moved to a position different from the current position.
[0123] The guidance information drawing unit 1583 draws guidance information for realizing an avatar movement guidance function. The guidance information is information for assisting or guiding a movement operation input of a user corresponding to the user avatar M1 so that the user avatar M1 can easily reach a desired space or a desired position within the space.
[0124] In this embodiment, the guidance information is information for assisting or guiding the user avatar M1 to move smoothly close to another user avatar M1. Specifically, the guidance information indicates the positional relationship between the user avatar M1 and the other user avatar M1. In this case, the guidance information drawing unit 1583 draws the guidance information in association with each user avatar M1.
[0125] In the following, with regard to the guidance information, the user avatar M1 that is guided to the vicinity of the other user avatar M1 is also referred to as the "guided user avatar M5" (an example of a first display medium), and the other user avatar M1 is also referred to as the "preceding user avatar M6" (an example of a second display medium).
[0126] In this embodiment, the guidance target user avatar M5 and the preceding user avatar M6 have a predetermined relationship. The predetermined relationship may be the same as the predetermined relationship related to the friend avatar described above. In this case, the guidance target user avatar M5 and the preceding user avatar M6 belong to the same group and are friend avatars. Note that the distinction between the guidance target user avatar M5 and the preceding user avatar M6 is for the purpose of explanation. For example, when the preceding user avatar M6 goes to pick up the guidance target user avatar M5, the preceding user avatar M6 can be a "guidance target" that is guided to the vicinity of the guidance target user avatar M5 based on the guidance information.
[0127] The guidance information preferably includes a line or a curve. The line or curve is drawn in the virtual space in association with the guidance target user avatar M5. For example, the line or curve may be drawn on the field surface 40 (part corresponding to the ground) of the virtual space, or may be drawn in the space in the virtual space.
[0128] When there are multiple guidance target user avatars M5, the guidance information may be generated and drawn for each guidance target user avatar M5. However, when multiple guidance target user avatars M5 are present at substantially the same position, part or all of the guidance information related to the multiple guidance target user avatars M5 may be integrated.
[0129] The lines or curves related to the guidance information may be drawn starting from the guidance target user avatar M5.
[0130] For example, one end of a line or curve related to the guidance information is associated with the guidance target user avatar M5, and the other end is associated with the preceding user avatar M6. This allows the user related to the guidance target user avatar M5 to easily move the guidance target user avatar M5 close to the preceding user avatar M6 by performing a movement operation input so that the movement of the guidance target user avatar M5 follows the line or curve.
[0131] However, when the preceding user avatar M6 is not drawn on the terminal image for the user related to the guidance target user avatar M5, one end of the line or curve related to the guidance information may be associated with the guidance target user avatar M5, and the other end may extend to a position suggesting the position of the preceding user avatar M6. In this case, the other end may be set to an edge of the terminal image for the user related to the guidance target user avatar M5. In this case, when the guidance target user avatar M5 moves, a mode may be realized in which the other end of the line or curve related to the guidance information extends to an edge of the terminal image that is updated in response to the movement of the guidance target user avatar M5.
[0132] Furthermore, the lines or curves related to the guidance information may be drawn along a recommended route. In this case, the recommended route may be a route that does not pass through obstacle-related objects such as a fountain object (i.e., a route along which the user avatar M1 can move without trouble). In this case, guidance information can be generated that follows a recommended route with fewer problems. As a result, efficient movement is realized, and the processing load related to the movement of the user avatar M1 can be reduced.
[0133] The recommended route may be set to pass through a content providing location that provides content such as advertisements that the user wants to see. This makes it possible to support the movement of the user avatar M1 along the recommended route while transmitting various types of necessary or useful information (e.g., content in the free space section 71 and the second object M3) to the user via the user avatar M1. From this perspective, the recommended route may be calculated as a route (e.g., the shortest route) that passes through an object related to an obstacle such as a fountain object. In this case, the user related to the guide target user avatar M5 will pay close attention to the situation in the virtual space and will think about and operate it on his / her own, which will increase the possibility of transmitting various types of necessary or useful information to the user.
[0134] The guidance information may include supplemental guidance information in association with the above-mentioned line or curve. The supplemental guidance information may be distance information between the guidance target user avatar M5 and the preceding user avatar M6, or distance change information indicating a change in the distance, as a positional relationship between the guidance target user avatar M5 and the preceding user avatar M6.
[0135] The distance information is, for example, in the form of a numerical value, but may be in other forms such as a meter. The distance change information may be expressed by the length, color, thickness, etc. of a line or curve. For example, if the distance increases, the length of the line or curve may be extended, and if the distance decreases, the length of the line or curve may be shortened. Alternatively, if the distance increases, the color may be a specific color (e.g., red), and if the distance decreases, the color may be another specific color (e.g., blue). The distance change information may be drawn separately from the line or curve in association with the line or curve. For example, the distance change information may be drawn as direct text such as "increase" or "decrease" as character information in association with the line or curve. In this case, the distance change information may be drawn (updated) only when the change in distance exceeds a predetermined amount. This can reduce inconveniences when the distance change information is updated relatively frequently (e.g., an increase in processing load, annoyance of display due to frequent switching between increase and decrease, etc.).
[0136] Fig. 11B is an explanatory diagram of an example of distance information, and Fig. 11C is an explanatory diagram of an example of distance change information, both of which are diagrams showing a part of an image for a terminal. Fig. 11B and Fig. 11C show examples of distance information or distance change information drawn in association with the guidance target user avatar M5.
[0137] Specifically, FIG. 11B shows an example of distance change information that expresses the sense of distance with a mark such as a "V" mark. In this case, a part G1100 of the terminal image shows distance information 1150A when the distance between the guidance target user avatar M5 and the preceding user avatar M6 is relatively large, and a part G1101 of the terminal image shows distance information 1151B when the distance between the guidance target user avatar M5 and the preceding user avatar M6 is relatively small. In this way, the distance information may be drawn in such a manner that the number of marks such as the "V" mark increases as the distance between the guidance target user avatar M5 and the preceding user avatar M6 increases. Note that the extension direction of the marks related to the distance information 1150A and 1151B as a whole may represent the direction in which the guidance target user avatar M5 exists. That is, the distance information 1150A and 1151B may function as a line or a curve related to the guidance information. The marks related to the distance information 1150A and 1151B may have their brightness or color changed in sequence to indicate a flow, thereby providing guidance information that is intuitively easy to understand.
[0138] FIG. 11C shows an example of distance change information that indicates the relative position with a mark such as a "V" mark. In this case, a part G1102 of the image for the terminal shows distance change information 1152A when the distance between the guidance target user avatar M5 and the preceding user avatar M6 increases, and a part G1103 of the image for the terminal shows distance change information 1153B when the distance between the guidance target user avatar M5 and the preceding user avatar M6 decreases. That is, the distance change information 1152A shows that the preceding user avatar M6 has moved away, and the distance change information 1153B shows that the preceding user avatar M6 has approached. In this way, the distance change information may be transmitted to the user related to the guidance target user avatar M5 by the direction of the mark such as a "V" mark. Note that, similar to the above-mentioned distance information 1150A and 1151B, the overall extension direction of the marks related to the distance change information 1152A and 1153B may show the direction in which the guidance target user avatar M5 exists. That is, the distance change information 1152A and 1153B may function as a line or curve related to the guidance information. Also, the marks related to the distance change information 1152A and 1153B may have their brightness or color changed in sequence in a manner that indicates a flow.
[0139] In the present embodiment, the guidance information rendering unit 1583 includes a distance calculation unit 15831 and a distance change determination unit (an example of a second determination unit) 15832 in order to generate supplemental guidance information.
[0140] The distance calculation unit 15831 calculates the distance between the guidance target user avatar M5 and the preceding user avatar M6 (distance in the global coordinate system (see FIG. 4)). The distance calculation unit 15831 may calculate the distance between each user avatar M1 in the group at predetermined intervals based on the group state information 1000. In this case, the above-mentioned distance information can be generated based on the calculation result by the distance calculation unit 15831. The distance to be calculated may be a straight-line distance or a distance along the movement path of the user avatar M1. The calculation result by the distance calculation unit 15831 may be used for other purposes (for example, determining the above-mentioned predetermined warp condition, etc.).
[0141] The distance change determination unit 15832 determines whether the distance between the guidance target user avatar M5 and the preceding user avatar M6 has decreased based on the change in the distance calculated by the distance calculation unit 15831. For example, the distance change determination unit 15832 may determine whether the distance between the guidance target user avatar M5 and the preceding user avatar M6 has decreased for each predetermined processing cycle. The distance to be determined may be only the distance between the guidance target user avatar M5 and the preceding user avatar M6 of each pair to which the guidance information is output. In this case, the above-mentioned distance change information can be generated based on the determination result by the distance change determination unit 15832. In addition, in this case, the processing load can be reduced by limiting the distance to be determined.
[0142] In a modified example, the supplemental guidance information may include time information (for example, the minimum time required to reach the preceding user avatar M6) instead of or in addition to the distance information.
[0143] Now, some examples of guidance information will be described with reference to FIG. 12 to FIG.
[0144] FIG. 12 is an explanatory diagram of the guidance information, and is a plan view of a virtual space similar to FIG. 2. In the virtual space shown in FIG. 2, an example of the positional relationship between a preceding user avatar M6 and a guidance target user avatar M5 is shown. In the example shown in FIG. 12, the preceding user avatar M6 is located in a space section 70-12, and the guidance target user avatar M5 is located in a free space section 71 different from the space section 70-12. For example, the position of the guidance target user avatar M5 shown in FIG. 12 may correspond to an initial position or its vicinity when entering the virtual space. In this case, a line or curve related to the guidance information may be generated along a guidance route 1200 shown in FIG. 12.
[0145] FIG. 13 is a diagram showing an example of a terminal image for a user related to the guidance target user avatar M5 under the situation shown in FIG. 12. In FIG. 13, an arrow line 1300 is drawn as guidance information in association with the guidance target user avatar M5. In this case, the guidance information drawing unit 1583 calculates a guidance route (in the example shown in FIG. 12, a guidance route 1200) which is a recommended route for moving close to the guidance target user avatar M5 and the preceding user avatar M6 based on the positional relationship between them. At this time, the guidance information drawing unit 1583 may calculate a guidance route that does not pass through an object related to an obstacle such as a fountain object (i.e., a guidance route that the user avatar M1 can move along), as described above. Then, the guidance information drawing unit 1583 draws an arrow line 1300 as shown in FIG. 13 based on the calculated guidance route. This allows the user related to the guidance target user avatar M5 to easily understand that it is sufficient to move along the arrow line 1300.
[0146] FIG. 14 is an explanatory diagram of guidance information, and is a plan view of a virtual space similar to FIG. 2, showing a different situation from FIG. 12. FIG. 14 also shows another example of the positional relationship between the preceding user avatar M6 and the guidance target user avatar M5 in the virtual space shown in FIG. In the example shown in FIG. 14, the preceding user avatar M6 is located in the space portion 70-14, and the guidance target user avatar M5 is located in a free space portion 71 different from the space portion 70-14. In this case, the line or curve related to the guidance information is a guidance route 1400 as shown in FIG. 14, and may be generated along the guidance route 1400 via the warp region 1100 as shown in FIG.
[0147] FIG. 15 is a diagram showing an example of a terminal image for a user related to the guide target user avatar M5 under the situation shown in FIG. 14. In FIG. 15, an arrow line 1500 is drawn in association with the guide target user avatar M5 as guidance information. In this case, the guidance information drawing unit 1583 calculates a guide route (guide route 1400 in the example shown in FIG. 14) which is a recommended route for moving to the vicinity of the guide target user avatar M5 and the preceding user avatar M6 based on the positional relationship between them, and draws an arrow line 1500 as shown in FIG. 15 based on the calculated guide route. In this case, if the guide target user avatar M5 can move to the vicinity of the preceding user avatar M6 in a shorter time by moving through the warp area 1100, the guide route may include the warp area 1100. In such a case, typically, the warp area 1100 is set between the guide target user avatar M5 and the preceding user avatar M6. In this manner, when the guidance route includes the warp area 1100, the guidance information drawing unit 1583 may draw a line or a curve with the warp area 1100 as an end point. In this case, the arrow line 1500 can suggest that the user should head toward the warp area 1100. This allows the user associated with the guidance target user avatar M5 to easily understand that he or she should move along the arrow line 1500 through the warp area 1100.
[0148] FIG. 16 is an explanatory diagram of another example of guidance information, and is a diagram showing an example of a terminal image for a user related to the guidance target user avatar M5 under the situation shown in FIG. 12. As described above, the guidance information may include supplemental guidance information in addition to the above-mentioned lines or curves. The supplemental guidance information may be information that cannot be expressed by lines or curves, or information that is more detailed than lines or curves. For example, in the example shown in FIG. 16, the supplemental guidance information 1600 is in the form of text information and is drawn in association with the arrow line 1300. In this case, the user related to the guidance target user avatar M5 can easily understand that the preceding user avatar M6 with the user name "User B" is 100 m ahead by looking at the supplemental guidance information 1600. Such supplemental guidance information is suitable for a situation in which there are multiple preceding user avatars M6 as will be described later with reference to FIG. 17.
[0149] Figure 17 is an explanatory diagram of another example of guidance information, and shows an example of a terminal image for a user relating to the guidance target user avatar M5 in a situation where two preceding user avatars M6 are located in the virtual space (a situation where the preceding user avatar M6 shown in Figure 12 and the preceding user avatar M6 shown in Figure 14 exist simultaneously).
[0150] In a situation where a plurality of preceding user avatars M6 are located in the virtual space, the guidance information drawing unit 1583 may draw guidance information for each of the plurality of preceding user avatars M6. That is, the guidance information drawing unit 1583 may draw guidance information in association with each of the plurality of preceding user avatars M6. In the example shown in FIG. 17, the arrow line 1300 relating to the preceding user avatar M6 shown in FIG. 12 and the arrow line 1500 relating to the preceding user avatar M6 shown in FIG. 14 are drawn at the same time. In this case, the supplemental guidance information 1600 relating to the preceding user avatar M6 with the user name "User B" shown in FIG. 12 or the supplemental guidance information 1700 relating to the preceding user avatar M6 with the user name "User C" shown in FIG. 14 may be displayed.
[0151] As described above, even in a situation where multiple preceding user avatars M6 are located in a virtual space, if some or all of the multiple preceding user avatars M6 are in substantially the same position, the lines or curves related to the guidance information relating to one or more preceding user avatars M6 that are in substantially the same position may be integrated.
[0152] Thus, according to this embodiment, by drawing the above-mentioned guidance information, it is possible to appropriately assist the movement of the guidance target user avatar M5 in the virtual space (i.e., the movement operation input by the user relating to the guidance target user avatar M5).
[0153] In this embodiment, the guidance information may be output when a predetermined output condition is satisfied. In this case, the predetermined output condition may be determined for each friend avatar that can become the preceding user avatar M6, similar to the predetermined warp condition described above. The predetermined output condition may be similar to the predetermined warp condition described above. In this case, the friend avatar to which the warp button 1800 is associated and drawn is also drawn with the guidance information as the preceding user avatar M6 at the same time.
[0154] When warp input is invalidated by the invalidation processing unit 1662 described later, the auxiliary information drawing unit 1584 draws auxiliary information for canceling the invalidation. As described later, movement of the user avatar M1 to a content providing position may be restricted depending on the possession state of the ticket related to the user avatar M1. Specifically, when a user does not possess a valid ticket related to a content providing position, the warp input by the user (warp input for instantaneous movement to a space related to the content providing position) is invalidated by the invalidation processing unit 1662. In such a case, the auxiliary information drawing unit 1584 provides auxiliary information that enables warp input.
[0155] The auxiliary information provided by the auxiliary information rendering unit 1584 may include at least one of the following: information on how to obtain a ticket, information on the location in the virtual space where a ticket can be obtained, information on a link or access method to a specific screen where a ticket can be obtained, information on benefits when a ticket is obtained, and information on content that can be viewed when a ticket is obtained.
[0156] In this embodiment, the auxiliary information drawing unit 1584 draws auxiliary information in association with the warp button 1800 drawn in an inoperable manner. As described above, the warp button 1800 is drawn in an inoperable manner when a predetermined warp condition is not established. Since the auxiliary information includes information for establishing the predetermined warp condition, a user who wishes to operate the warp button 1800 can understand the procedures and contents of various operations for establishing the predetermined warp condition by accessing the auxiliary information.
[0157] For example, FIG. 18 shows the group information display area 3000 on the terminal screen for a user with the user name "User A". In this example, the warp button 1800-2 is drawn in an operable manner for the user with the user name "User C", whereas the warp button 1800-1 is drawn in an inoperable manner for the user with the user name "User B". In this case, the user with the user name "User B" is located in a space portion that requires the ticket A, but the user with the user name "User A" (himself) does not have the ticket A, and the predetermined warp condition is not established. In this case, the user with the user name "User A" can understand that it is necessary to obtain the ticket A if he wants to teleport his / her user avatar M1 (guidance target user avatar M5) to the vicinity of the user avatar M1 (preceding user avatar M6) of the user name "User B" based on the fact that the warp button 1800-1 is inoperable and the auxiliary information 1840-1 and 1840-2.
[0158] In the example shown in FIG. 18, the group information display area 3000 depicts the ticket status 1880 in the group. The ticket status 1880 in the group may include information about tickets held by each user avatar M1 (friend avatar) in the group. In this case, the user avatar M1 associated with the user name "User B" has five tickets A. Therefore, when the user associated with the user name "User A" wants to teleport his / her own user avatar M1 (guidance target user avatar M5) close to the user avatar M1 (preceding user avatar M6) associated with the user name "User B", he / she can request ticket A from the user associated with the user name "User B" by operating a link or button (not shown) associated with the auxiliary information 1840-1, for example.
[0159] FIG. 19 shows a terminal image G110 including a ticket booth in a virtual space. A user associated with the user name "user A" may be able to teleport to the ticket booth by operating a link or button (not shown) associated with the auxiliary information 1840-2 (see FIG. 18), for example. In the example shown in FIG. 19, a terminal image G110 for a user associated with the user name "user A" is shown as a terminal image after teleportation to the ticket booth. The ticket booth may be located near a space section where content associated with ticket A sold at the ticket booth is provided. For example, in the example shown in FIG. 19, a user associated with the user name "user A" may move a corresponding user avatar M1 to a ticket purchase position SP1 and purchase a ticket A via a user avatar M1 (user name "cha") associated with a staff member working at the ticket booth. After purchasing a ticket A, the user associated with the user name "user A" may enter a space section where content associated with the purchased ticket A is provided by moving the corresponding user avatar M1 to an entrance position SP2.
[0160] The warp action drawing unit 1585 may perform a representation (for example, an animation representation) suggesting teleportation when the first warp processing by the first warp processing unit 15222 or the second warp processing by the second warp processing unit 15223 described above is executed. The representation suggesting teleportation may be realized, for example, by a high-speed vehicle (such as a high-speed train or helicopter), a change in the entire screen to a specific color, a flash representation, or the like. The representation for the first warp processing and the representation for the second warp processing may be realized in different modes. Also, the representation mode may differ depending on the length of the travel distance by the warp processing.
[0161] In addition, the teleportation related to the warp process may be realized by automatically moving the user avatar M1 (the guide target user avatar M5) at high speed along the trajectory of the movement of the preceding user avatar M6. In this case, the image for the terminal during the warp process may be drawn by partially omitting the drawing of the surrounding second object M2, etc. This reduces the processing load related to the drawing process related to the warp process, and allows the guide target user avatar M5 to see the same scenery (the scenery in the virtual space) as the user related to the preceding user avatar M6. As a result, for example, even if the guide target user avatar M5 teleports near the preceding user avatar M6, it is possible to enjoy a conversation about the second object M2 or the like that is on the way, and this can promote interaction.
[0162] The space part transition drawing unit 1586 may perform a representation suggesting a transition of the space part when one user avatar M1 moves from one space part to another space part based on a movement operation input. The representation suggesting the transition of the space part may be realized, for example, by temporarily expanding the space part after the movement.
[0163] The content processing unit 159 provides the content to the user for each content providing position. The content processing unit 159 may output the content on the terminal device 20 via, for example, a browser. Alternatively, the content processing unit 159 may output the content on the terminal device 20 via a virtual reality application implemented in the terminal device 20.
[0164] The dialogue processing unit 160 executes dialogue processing related to dialogue between users via the network 3 based on inputs from a plurality of users. Dialogue between users may be realized in a chat format using text and / or voice via their respective user avatars M1. For example, the dialogue interface 309 of the terminal image shown in FIG. 3 may be used for input for dialogue. In this case, the user can input voice by operating a microphone icon 3091 and speaking, and can also input text by inputting text into a text input area 3092. This enables dialogue between users. Note that text may be drawn on each terminal image (each terminal image related to each user who is having a dialogue) in a dialogue format that leaves a certain number of histories. In this case, for example, the text may be output separately from the image related to the virtual space, or may be output superimposed on the image related to the virtual space.
[0165] The dialogue processor 160 may execute dialogue processing for each group so that dialogue is realized only within the same group. In this case, each user can enjoy dialogue without worrying that the contents of the utterance will not be known to users outside the group. In this case, when outputting a voice input from one user in the group, the dialogue processor 160 may emphasize (for example, enlarge, blink, color, etc.) the microphone icon 360 corresponding to the one user among the microphone icons 360 that may be displayed in the group information display area 3000 (see FIG. 3A). This allows other users to easily understand which user in the group has spoken the voice being output. Note that instead of or in addition to the microphone icon 360, an avatar icon (avatar icon 350, 351, etc.) in the group information display area 3000 (see FIG. 3A) may be emphasized in the same manner.
[0166] The first movement authority processing unit 162 generates a ticket (movement authority) for receiving the provision of content at a content providing position based on a purchase input from the user, and associates the ticket with the user avatar M1 associated with the user.
[0167] The purchase input includes various inputs for purchasing tickets. The purchase input typically involves the consumption of money or a virtual reality medium having monetary value. The virtual reality medium having monetary value may include a virtual reality medium that can be obtained by spending money. The consumption of a virtual reality medium may be achieved by dissolving the association between a user ID and the virtual reality medium, reducing the amount or number of the virtual reality medium associated with the user ID, or the like.
[0168] When generating a ticket, the first transfer authority processing unit 162 generates a new ticket ID (see FIG. 9) and updates the data in the ticket information storage unit 145. In this case, the new ticket ID is associated with the content providing location, the owner ID, etc. (see FIG. 9). In this case, the owner ID is the user ID associated with the user who made the purchase input described above.
[0169] In the present embodiment, as an example, the first transfer authority processing unit 162 includes a purchase input obtaining unit 1621, a ticket ID generating unit 1622, an authentication information notifying unit 1623, and a ticket drawing unit 1624.
[0170] The purchase input acquisition unit 1621 acquires the above-mentioned purchase input from the user via the terminal device 20 and the network 3.
[0171] The purchase input can be input by a user associated with the user avatar M1 when the user avatar M1 is located near an entrance to the content provision location. The entrance to the content provision location in the virtual space does not need to be clearly defined, but the position in the virtual space corresponding to the entrance may be associated with characters such as "entrance" or "gate" by drawing.
[0172] In this case, a user who wishes to purchase a ticket can bring their own user avatar M1 near the entrance and make a purchase input through dialogue with user avatar M1 of a staff member who is positioned in correspondence with the ticket purchase location SP1 (see user avatar M1 with the username “cha” in Figure 19).
[0173] As described above, the ticket ID generating unit 1622 generates a new ticket ID (see FIG. 9) based on the purchase input and updates the data in the ticket information storage unit 145. For example, when a user who wants to purchase a ticket inputs a purchase while positioning his / her user avatar M1 near the entrance, the ticket ID generating unit 1622 immediately generates a new ticket ID. In this case, the initial value of the validity flag associated with the ticket ID may be set to "1." Also, when a user who has previously purchased a ticket inputs a validation input while positioning his / her user avatar M1 near the entrance, the ticket ID generating unit 1622 may change the value of the validity flag associated with the already generated ticket ID from "0" to "1."
[0174] The authentication information notifying unit 1623 notifies the user who purchased the ticket based on the purchase input of the transfer authentication information (see FIG. 9) associated with the purchased ticket. As described above, in this embodiment, as an example, the transfer authentication information is a four-digit code consisting of numbers and / or symbols. For example, the authentication information notifying unit 1623 transmits the transfer authentication information to the terminal device 20 related to the user who purchased the ticket via the network 3. At this time, the transfer authentication information may be notified by email, an automated voice message by telephone, or the like. Alternatively, as described above, the transfer authentication information may be set by the user when making the purchase input. In this case, the authentication information notifying unit 1623 may be omitted.
[0175] The ticket drawing unit 1624 may draw a ticket (virtual reality medium) for each ticket ID based on the purchase input. For example, when the ticket display 1850 (see FIG. 3A) includes an icon display of the user avatar M1 associated with the owner ID, the ticket drawing unit 1624 may draw the ticket in association with the hand of the user avatar M1 associated with the owner ID in the terminal image including the user avatar M1 associated with the owner ID. This allows a state in which the user avatar M1 holds (owns) the ticket to be realized in virtual reality. Note that when multiple ticket IDs are associated with the same owner ID, the user avatar M1 associated with the owner ID may be drawn in a state in which it holds multiple tickets.
[0176] The second transfer authority processing unit 164, based on the transfer input from the user, changes the association of the ticket, which has been associated with a user ID related to a specific user by the first transfer authority processing unit 162, to a user ID related to a user different from the specific user. That is, the second transfer authority processing unit 164 changes the owner ID (see FIG. 9) associated with the ticket from the user ID related to the purchaser ID to a user ID related to another user to whom the ticket is to be transferred. In this way, the second transfer authority processing unit 164 changes the association of the ticket, which has been associated with a specific user (purchaser ID) by the first transfer authority processing unit 162, to a user different from the specific user (transferee user) based on the transfer input. As a result, the ticket changes from a state associated with the user avatar M1 related to the transferring user to a state associated with the user avatar M1 related to the receiving user based on the transfer input.
[0177] Specifically, the second transfer authority processing unit 164 includes a transfer input acquisition unit 1640 , an authentication notice notification unit 1641 , and a ticket information rewriting unit 1644 .
[0178] The transfer input acquisition unit 1640 acquires a transfer input from the above-mentioned transferring user from the terminal device 20 via the network 3. The transfer input includes the ticket ID related to the ticket to be transferred. Note that a user who can make a transfer input is a user who owns the ticket, and is a user who has a user ID related to the owner ID in the ticket information 900 (see FIG. 9). The transfer input may also include a user ID associated with the transferee user.
[0179] The transfer input may be made available for input by the user together with the purchase input, for example. This is because, for example, when a parent and child purchase tickets, it is relatively common for the parent to purchase the ticket with the intention of transferring it to the child. Alternatively, a user with multiple tickets associated therewith (i.e., a user who has purchased multiple tickets) may make a transfer input in response to a request from another user.
[0180] In response to the above-mentioned transfer input, the authentication notification notification unit 1641 notifies the transferor user to notify the transferee user of the transfer authentication information. This notification may be realized at the time of purchase input or at another timing. In addition, when each user is informed of this point in advance when using the virtual reality generating system 1, the authentication notification notification unit 1641 may be omitted. When the transferor user receives such notification, the transferor user notifies the transferee user of the transfer authentication information by chat, email, SMS (short message service), or the like. In addition, when the transferor user and the transferee user are in a relationship in which the same transfer authentication information is used many times, such as a parent-child relationship, the notification of the transfer authentication information itself may not be necessary. In addition, when the transferor user and the transferee user are close to each other in reality, the notification of the transfer authentication information may be realized directly in face-to-face.
[0181] The ticket information rewriting unit 1644 rewrites the owner ID of the ticket information 900 based on the transfer input acquired by the transfer input acquisition unit 1640 and the input of authentication information for transfer from the transferee user. Specifically, when authentication is successful based on the input of valid authentication information for transfer from the transferee user, the ticket information rewriting unit 1644 associates the user ID included in the transfer input as the owner ID associated with the ticket ID included in the transfer input. At this time, the state in which the user ID of the user who made the transfer input is associated with the owner ID may be canceled, and the fact of the transfer may be added as the transfer information (see FIG. 9) of the ticket information rewriting unit 1644. Alternatively, instead of rewriting the owner ID of the ticket information 900 (for example, while the state in which the user ID of the user who made the transfer input is associated with the owner ID is maintained), the user ID of the transferee user may be registered as the user or user avatar M1 who can use the ticket.
[0182] Here, as described above, the transfer authentication information is notified in advance from the transferor user to the transferee user. The transferor user can set the transfer authentication information that is known only to the transferee user, or can notify the transfer authentication information that is known only to the transferee user, so there is practically no possibility that the transfer authentication information will be known to unintended other users. Therefore, by using such transfer authentication information, the security of authentication related to the ticket information rewriting unit 1644 can be improved. However, from the viewpoint of enabling simple transfer, the comparison using the transfer authentication information at the time of transfer may be omitted. Whether or not to omit the transfer authentication information may be selectable at the time of transfer input.
[0183] When the ticket information rewriting unit 1644 changes the owner ID related to one ticket ID in this way, the ticket drawing unit 1624 may instruct the ticket drawing unit 1624 to reflect the change. In this case, the ticket drawing unit 1624 draws the ticket in association with the user avatar M1 related to the new owner ID. For example, the user can recognize whether or not he has a ticket by checking the transition to a ticket management screen, the ticket display 1850 (see FIG. 3A and FIG. 18) that may be displayed in the group information display area 3000, or the state in which the ticket is drawn in association with his / her user avatar M1 on the user's terminal image displayed on his / her terminal device 20.
[0184] The determination processing unit 166 determines whether or not the user avatar M1 can move to the content providing position based on the ticket information 900 (see FIG. 9).
[0185] Specifically, the determination processing unit 166 includes a ticket possession determination unit 1661 (an example of a first determination unit) and an invalidation processing unit 1662.
[0186] When determining whether a certain user avatar M1 can move to a certain content providing location, the ticket possession determination unit 1661 first determines whether the certain user avatar M1 has a ticket that allows the certain user avatar M1 to move to the certain content providing location. Hereinafter, such a determination process is also referred to as "ticket possession determination."
[0187] The ticket possession determination can be realized based on the ticket information 900 shown in Fig. 9. In this case, it can be determined that a user (or his / her user avatar M1) whose user ID is the owner ID possesses a ticket with a ticket ID associated with the owner ID. Also, if a validity flag "1" is associated with the ticket ID of the ticket, it can be determined that the ticket is a ticket that can be used to move to the content providing position.
[0188] The ticket possession determination may be performed at any timing, for example, when the above-mentioned warp button 1800 (see FIG. 3A) appears. Alternatively, the ticket possession determination may be performed for the user avatar M1 located in the entrance area related to the content provision position based on the position information of the user avatar M1 (see FIG. 6). The entrance area related to the content provision position (for example, the entrance position SP2 in FIG. 19) is an area where the user avatar M1 who wishes to move to the content provision position is located, and the location of the user avatar M1 in the entrance area may be an indication of the user's intention that the user avatar M1 wishes to move to the content provision position. Alternatively, in addition to the user avatar M1 being located in the entrance area, a presentation operation of a ticket or the like may be treated as an indication of the user's intention that the user avatar M1 wishes to move to the content provision position.
[0189] Here, in this embodiment, the ticket is transferable as described above in relation to the second movement authority processing unit 164. Therefore, when determining whether a user possesses a ticket for a space portion that is a content providing position, the ticket possession determination unit 1661 may determine that a user avatar M1 of a user who has not initially purchased a ticket for the content providing position can move to the content providing position. Specifically, when the acquired information of a plurality of tickets for the content providing position is associated with the user avatar M1 and the other user avatar M1 satisfies a predetermined condition, the ticket possession determination unit 1661 determines that the other user avatar M1 can move to the space portion for the content providing position. For example, in the example shown in FIG. 18, the user avatar M1 associated with the username "User B" is associated with acquired information for five tickets A. In this case, if the user associated with the username "User A" legitimately acquires ticket A from the user associated with the username "User B" (an example of a specified condition), the user avatar M1 of the user associated with the username "User A" can move to the content provision position for ticket A.
[0190] When the ticket possession determination unit 1661 determines that a certain user avatar M1 has a ticket that allows the user avatar M1 to move to the content provision position, the invalidation processing unit 1662 permits the user avatar M1 to move to the content provision position. On the other hand, when the ticket possession determination unit 1661 determines that a certain user avatar M1 does not have a ticket that allows the user avatar M1 to move to the content provision position, the invalidation processing unit 1662 prohibits the user avatar M1 from moving to the content provision position. In this case, in this embodiment, the invalidation processing unit 1662 prohibits the user avatar M1 from moving to the content provision position by invalidating the warp button 1800 (warp input for moving to the content provision position) associated with the user avatar M1. For example, the invalidation processing unit 1662 outputs an instruction to invalidate the warp button 1800 to the user interface drawing unit 1582. In this case, the user interface rendering unit 1582 achieves the disablement by not displaying the warp button 1800 associated with one user avatar M1 or by displaying it in an inactive state (see warp button 1800-1 in FIG. 18). Note that although the existence of the inactive warp button 1800-1 is visible, no warp input occurs even if an attempt is made to operate it.
[0191] Alternatively, instead of issuing an instruction to disable the warp button 1800, the invalidation processing unit 1662 may change the second specified position, which is the destination of the second warp processing related to the warp button 1800, from a position within the space in which the content provision position is located to a position outside the space (e.g., near the entrance).
[0192] The parameter update unit 170 updates the values of various parameters (see FIG. 4) of the virtual camera 60. Note that, as described above, the values of the various parameters of the virtual camera 60 may differ for each terminal image (each user avatar M1). The parameter update unit 170 may update the values of the various parameters of the virtual camera 60 related to one user avatar M1 in accordance with the position / orientation information of the user avatar M1. Furthermore, the parameter update unit 170 may update the values of the various parameters of the virtual camera 60 in accordance with a change in mode, such as the first-person perspective mode, of the terminal image generation unit 158 described above.
[0193] Next, an example of the operation of the virtual reality generation system 1 will be described with reference to Fig. 20 to Fig. 23. In the process flow diagrams (flowcharts) below, the order of the steps may be changed as long as the relationship between the input and output of each step is not lost.
[0194] Fig. 20 is a schematic flow chart showing an example of an operation related to drawing of guidance information and drawing of the warp button 1800, among various operations of the virtual reality generation system 1. The process shown in Fig. 20 shows a process for a certain user, and may be started when a virtual reality application in a terminal device 20 related to the certain user is started, and may be repeatedly executed at a predetermined period until the virtual reality application is turned off. Note that the process shown in Fig. 20 may be executed in parallel for each user.
[0195] In step S2000, the server device 10 judges whether or not a user avatar M1 relating to a user has entered the virtual space. That is, it judges whether or not there has been entry into the virtual space. If the judgment result is "YES", the process proceeds to step S2002, otherwise the process proceeds to step S2004. In the following, unless otherwise specified, the user refers to the user relating to the user avatar M1 judged to have entered the virtual space in step S2000, and the user avatar M1 refers to the user avatar M1 judged to have entered the virtual space in step S2000.
[0196] In step S2002, the server device 10 assigns a group ID to the user avatar M1. The user may input a group name when entering the virtual space. In this case, the group name may be input by selecting a desired group name from a list of currently active group names. In this case, the server device 10 updates the group state information 1000 (see FIG. 10) in the group state storage unit 146 by associating the user avatar M1 with the group ID corresponding to the group name. In addition, when a new group name is input, a new group ID may be set.
[0197] In step S2004, the server device 10 determines whether the user avatar M1 has left the virtual space. If the determination result is "YES", the process proceeds to step S2006, and otherwise (i.e., if the user avatar M1 is still active in the virtual space), the process proceeds to step S2008.
[0198] In step S2006, the server device 10 updates the group state information 1000 (see FIG. 10) in the group state storage unit 146 by removing (dismissing) the user avatar M1 from the group. The departure of the user avatar M1 may be notified to the users associated with the other user avatars M1 in the group. For example, the departure of the user avatar M1 may be notified to the users associated with the other user avatars M1 in the group by updating the information in the group information display area 3000.
[0199] In step S2008, the server device 10 determines whether or not there is another user avatar M1 (i.e., a friend avatar) in the same group, based on the group state information 1000 in the group state storage unit 146. If the determination result is "YES", the process proceeds to step S2009, otherwise the process proceeds to step S2017.
[0200] In step S2009, the server device 10 executes a guidance information output process. An example of the guidance information output process will be described later with reference to FIG.
[0201] In step S2010, the server device 10 sorts the user IDs of one or more other user avatars M1 (friend avatars) in the group in a predetermined order, and sets the variable j to an initial value "1."
[0202] In step S2011, the server device 10 performs warp condition determination processing on the j-th friend avatar. An example of the warp condition determination processing will be described later with reference to FIG.
[0203] In step S2012, the server device 10 determines whether or not a predetermined warp condition for the user avatar M1 to teleport to the vicinity of the j-th friend avatar is satisfied based on the result of the warp condition determination process in step S2011. If the determination result is "YES", the process proceeds to step S2013, and otherwise the process proceeds to step S2014.
[0204] In step S2013, the server device 10 renders an operable warp button 1800 in association with a friend avatar for which a predetermined warp condition is met.
[0205] In step S2014, the server device 10 renders the warp button 1800 inoperable in association with the friend avatar for which the predetermined warp condition is not satisfied, and also renders the above-mentioned auxiliary information. This allows the user to obtain tickets as appropriate using the auxiliary information, thereby enabling the predetermined warp condition to be satisfied.
[0206] In step S2015, the server device 10 judges whether the variable j is equal to the number of friend avatars in the group. In other words, it judges whether the success or failure of the predetermined warp condition has been judged for all friend avatars. If the judgment result is "YES", the process proceeds to step S2017, otherwise, the process returns to step S2011 via step S2016.
[0207] In step S2016, the server device 10 increments the variable j by 1. In this manner, if a plurality of friend avatars exist in the virtual space, the warp condition determination process may be executed for each friend avatar.
[0208] In step S2017, the server device 10 updates the position / orientation information of each user avatar M1, the values of the camera parameters of each virtual camera 60, and the like, based on various operational inputs from each user in the group.
[0209] In step S2018, the server device 10 generates a terminal image for each user in the group and transmits it to the terminal device 20 of each user.
[0210] In step S2020, the server device 10 executes dialogue processing based on voice inputs from each user in the group, etc. The dialogue processing may be as described above in relation to the dialogue processing unit 160.
[0211] FIG. 21 is a schematic flowchart showing an example of the guide information output process (step S2009 in FIG. 20).
[0212] In step S2100, the server device 10 extracts one or more other user avatars M1 (friend avatars) in the group, and sorts the user IDs (or user avatar IDs) related to the extracted friend avatars in a predetermined order.
[0213] In step S2102, the server device 10 sets the variable k to an initial value "1."
[0214] In step S2104, the server device 10 processes the kth friend avatar and calculates the distance d(i) between the user avatar M1 and the kth friend avatar (in FIG. 21, this is indicated as "avatar distance") for the current period. Here, "i" is an arbitrary integer representing the number of periods. As described above, the distance d(i) may be a distance in the global coordinate system.
[0215] In step S2105, the server device 10 determines whether a predetermined output condition for the guidance information is satisfied for the k-th friend avatar. The predetermined output condition is arbitrary as described above, but may be satisfied here, for example, when the distance d(i) is equal to or greater than a predetermined distance D4. In this case, the predetermined distance D4 may be significantly greater than the above-mentioned predetermined distance D2 and may be the same as the above-mentioned predetermined distance D3. If the determination result is "YES", the process proceeds to step S2106, and otherwise the process proceeds to step S2112.
[0216] In step S2106, the server device 10 determines whether the distance between the user avatar M1 and the k-th friend avatar is shorter in the current cycle than in the previous cycle, based on the distance d(i) in the current cycle and the distance d(i-1) in the previous cycle. In a modified example, the average value of the distances in a predetermined number of cycles before the previous cycle may be used instead of the distance d(i-1) in the previous cycle. If the determination result is "YES", the process proceeds to step S2108, and otherwise the process proceeds to step S2110.
[0217] In step S2108, the server device 10 renders guidance information indicating the positional relationship between the user avatar M1 and the k-th friend avatar, including distance change information indicating that the distance between the user avatar M1 and the k-th friend avatar is shortening (guidance information indicating a shortening of the distance). The method of rendering the guidance information may be as described above.
[0218] In step S2110, the server device 10 renders guidance information indicating a positional relationship between the user avatar M1 and the k-th friend avatar, the guidance information including distance change information indicating that the distance between the user avatar M1 and the k-th friend avatar is increasing (guidance information indicating an increase in distance). The method of rendering the guidance information may be as described above.
[0219] In step S2112, the server device 10 determines whether the variable k is equal to the number of friend avatars in the group. That is, it determines whether guidance information has been rendered for all friend avatars. If the determination result is "YES", the process of FIG. 21 ends, and otherwise the process returns to step S2104 via step S2114.
[0220] In step S2114, the server device 10 increments the variable k by 1. In this manner, when a plurality of friend avatars exist in the virtual space, the manner in which the distance changes may be evaluated for each friend avatar.
[0221] In this manner, according to the process shown in FIG. 20 and FIG. 21, guidance information and the warp button 1800 can be rendered for each friend avatar in the group, thereby effectively supporting the movement of the user avatar M1 in the virtual space.
[0222] FIG. 22 is a schematic flowchart showing an example of the warp condition determination process (step S2011 in FIG. 20).
[0223] In step S2200, the server device 10 identifies the spatial portion (content providing position) in which the j-th friend avatar is located, based on the position / orientation information of the j-th friend avatar.
[0224] In step S2202, the server device 10 determines whether or not the user avatar M1 is located within a specific area based on the position / orientation information of the user avatar M1. In this embodiment, the specific area is an arbitrary position, so step S2202 may be automatically satisfied. However, in a modified example, the specific area may be an area excluding a part of the virtual space (for example, an area within a predetermined distance D3 from the j-th friend avatar). If the determination result is "YES", proceed to step S2204, and otherwise proceed to step S2218.
[0225] In step S2204, the server device 10 determines whether or not a ticket is required to move to the space (content providing location) where the j-th friend avatar is located, based on the data in the content information storage unit 144. If the determination result is "YES", the process proceeds to step S2206, and otherwise the process proceeds to step S2208.
[0226] In step S2206, the server device 10 judges whether the user avatar M1 has a ticket for moving to the space (content providing position) where the j-th friend avatar is located. This judgment method may be as described above in relation to the ticket possession judgment unit 1661. If the judgment result is "YES", the process proceeds to step S2208, and otherwise the process proceeds to step S2210.
[0227] In step S2208, the server device 10 creates a state (movement permitted state) in which the user avatar M1 can move to the space (content providing position) where the j-th friend avatar is located. In this case, the predetermined warp condition is satisfied, and the determination result in step S2012 is "YES."
[0228] In step S2210, the server device 10 creates a state (movement prohibited state) in which the user avatar M1 cannot move to the space (content providing position) where the j-th friend avatar is located. In this case, the predetermined warp condition is not satisfied, and the determination result in step S2012 is "NO."
[0229] In step S2212, the server device 10 determines whether or not multiple tickets for moving to the space (content providing position) where the j-th friend avatar is located are associated with the j-th friend avatar, based on the data (see FIG. 9) in the ticket information storage unit 145. If the determination result is "YES", the process proceeds to step S2214, and otherwise the process proceeds to step S2216.
[0230] In step S2214, the server device 10 outputs auxiliary information (see auxiliary information 1840-1 in FIG. 18) to the user associated with the user avatar M1, prompting the user to request a ticket transfer to the user associated with the j-th friend avatar. As described above, the auxiliary information may be drawn in association with the warp button 1800 (see FIG. 18). The auxiliary information may include a button that is operated when sending a request to the user associated with the j-th friend avatar. Note that the output of such auxiliary information may be executed only when there is a high possibility that the destination of the user avatar M1 is near the j-th friend avatar.
[0231] In step S2216, the server device 10 outputs auxiliary information (see auxiliary information 1840-2 in FIG. 18) notifying the user associated with the user avatar M1 of the ticket sales location for moving to the space (content providing location) where the j-th friend avatar is located. Note that such auxiliary information may include a link or button that is accessed or operated when teleporting to the ticket sales location (ticket booth).
[0232] In step S2218, the server device 10 creates a state (movement prohibited state) in which the user avatar M1 cannot move to the space (content providing position) where the j-th friend avatar is located. In this case, the predetermined warp condition is not satisfied, and the determination result in step S2012 is "NO."
[0233] In the process shown in FIG. 22, in step S2214, the server device 10 outputs auxiliary information to the user associated with the user avatar M1 to prompt the user to request a ticket transfer to the user associated with the j-th friend avatar, and in addition to this, the server device 10 may also output auxiliary information to be output in step S2216.
[0234] FIG. 23 is an explanatory diagram of FIG. 22, and is a schematic flowchart of a case where a request is transmitted from the user associated with the user avatar M1 to the user associated with the j-th friend avatar.
[0235] In FIG. 23, the terminal device 20A represents the terminal device 20 related to the user associated with the j-th friend avatar, and the terminal device 20B represents the terminal device 20 related to the user associated with the user avatar M1.
[0236] In this case, when a user associated with the jth friend avatar purchases multiple tickets on terminal device 20A (step S2300), the ticket purchase information is stored (updated) in server device 10 (see ticket information 900 in ticket information storage unit 145 shown in FIG. 9) (step S2302).
[0237] Thereafter, the server device 10 outputs to the terminal device 20B auxiliary information prompting the terminal device 20B to make a request for transferring the ticket to the user associated with the j-th friend avatar (see step S2214 in FIG. 22) (step S2304). In response to this auxiliary information, the terminal device 20B transmits a request to the terminal device 20A (step S2306). Note that this request may be transmitted from the terminal device 20B to the terminal device 20A via the server device 10.
[0238] In response to the request from terminal device 20B, the user associated with the jth friend avatar transmits a transfer input to server device 10 (step S2308) and notifies the user associated with terminal device 20B of authentication information for transfer (step S2310). Note that the transfer input may be transmitted in advance (for example, at the stage of step S2300) from the user associated with the jth friend avatar, as described above. Similarly, the authentication information for transfer may be notified in advance to the user of terminal device 20B by the user associated with the jth friend avatar, as described above.
[0239] When the user of terminal device 20B is notified of the authentication information for transfer from the user associated with the j-th friend avatar, the user of terminal device 20B transmits the authentication information for transfer to server device 10 (step S2311). Note that when transmitting a request to terminal device 20A, server device 10 may cause terminal device 20B to output an input screen for the authentication information for transfer.
[0240] When the server device 10 receives the authentication information for transfer from the terminal device 20B, it performs a comparison, and if the comparison is successful, it matches one of the tickets associated with the user associated with the j-th friend avatar with the user associated with the terminal device 20B (step S2312). That is, such rewriting of the ticket information 900 may be as described above with reference to the ticket information rewriting unit 1644. In conjunction with such rewriting, the server device 10 redraws the warp button 1800 associated with the j-th friend avatar from an inoperable state to an operable state (step S2314).
[0241] As a result, the user of the terminal device 20B can instantly teleport the user avatar M1 to the side of the j-th friend avatar by operating the warp button 1800 associated with the j-th friend avatar (step S2316).
[0242] 5 to 23, the server device 10 comprehensively realizes various functions, but some or all of the various functions of the server device 10 described above can be realized by the terminal device 20 instead of the server device 10. In the following, as an example, a configuration in which some of the various functions of the server device 10 are realized by the terminal device 20 will be described.
[0243] 24 is an example of a functional block diagram of the terminal device 20 related to the avatar movement guidance function. In the following, one terminal device 20 will be described as a representative, and a user refers to a user related to the terminal device 20 unless otherwise specified.
[0244] In the example shown in FIG. 24, the terminal device 20 includes a user database 240, an avatar database 242, a content information storage unit 244, a ticket information storage unit 245, a group state storage unit 246, an operation input generation unit 250, a server information acquisition unit 251, a user avatar processing unit 252 (an example of an acquisition unit and an example of a position change unit), a friend avatar processing unit 254, an operation input transmission unit 255, a terminal image generation unit 258, a content processing unit 259, a dialogue processing unit 260, and a parameter update unit 270.
[0245] Note that the user database 240 to the group state storage unit 246 can be realized by the terminal storage unit 22 shown in Fig. 1, and the operation input generation unit 250 to the parameter update unit 270 can be realized by the terminal control unit 25 shown in Fig. 1. Also, a part of the operation input generation unit 250 to the parameter update unit 270 (functional units that communicate with the server device 10) can be realized by the terminal communication unit 21 together with the terminal control unit 25 shown in Fig. 1.
[0246] Each piece of data stored in the group status storage unit 246 from the user database 240 may be substantially the same as each piece of data stored in the group status storage unit 146 from the user database 140 of the server device 10 described above. However, each piece of data stored in the user database 240 may only be data related to the user and his / her friend users (users related to friend avatars in the same group, the same applies below) among the data stored in the user database 140 of the server device 10 described above. The same applies to the ticket information storage unit 245 and the group status storage unit 246.
[0247] The operation input generating unit 250 generates the above-mentioned operation input information based on various inputs from the user (various inputs via the input unit 24). Note that the various inputs from the user are as described above, and may include movement operation input, input for dialogue, ticket request, authentication information for transfer, etc.
[0248] The server information acquisition unit 251 acquires various data stored in the user database 240 and in each of the group state storage units 246 from the server device 10. The timing of data acquisition by the server information acquisition unit 251 is arbitrary, and may be when the virtual reality application is updated, etc. However, the timing of acquisition (update) of the data stored in the group state storage unit 246 may be when the users constituting the group change. In this way, the various data stored in the group state storage units 246 from the user database 240 may be updated as appropriate based on the data acquired by the server information acquisition unit 251.
[0249] The user avatar processing unit 252 has substantially the same functions as the user avatar processing unit 152 of the above-described server device 10. However, the user avatar M1 to be processed by the user avatar processing unit 252 may be only the user avatar M1 associated with the user of the terminal device 20.
[0250] The friend avatar processing unit 254 has substantially the same functions as the above-described user avatar processing unit 152 of the server device 10. However, the user avatar M1 to be processed by the friend avatar processing unit 254 may be only the friend avatar for the user avatar M1 associated with the user of the terminal device 20.
[0251] The user avatar processing unit 252 and the friend avatar processing unit 254, like the user avatar processing unit 152 of the server device 10 described above, each realizes various processes, such as movement processing based on a movement operation input, a first warp process, a second warp process, etc., for the user avatar M1 to be processed. The user avatar processing unit 252 may perform various processes based on operation input information related to a user, and the friend avatar processing unit 254 may perform various processes based on operation input information related to a friend user. This updates the position / orientation information of each user avatar M1.
[0252] The operation input transmitting unit 255 transmits the operation input information generated by the operation input generating unit 250 to the server device 10. Note that the operation input transmitting unit 255 may transmit, instead of the operation input information, position / orientation information of the user avatar M1 updated by the user avatar processing unit 252 based on the operation input information to the server device 10. Furthermore, the operation input transmitting unit 255 may transmit the operation input information to the server device 10 only when there is another user avatar M1 (friend avatar) in the virtual space in which the user avatar M1 related to the user is active.
[0253] The terminal image generating unit 258 generates a terminal image for the terminal device 20. The terminal image may be as described above. In this case, for example, the terminal image generating unit 258 may draw an image of each friend avatar based on the position / orientation information of the friend avatar acquired or generated by the friend avatar processing unit 254, information for identifying the friend avatar to be drawn (e.g., a user avatar ID), and avatar information 700 (see FIG. 7) related to the friend avatar to be drawn. In this case, the terminal device 20 may store part information for drawing each part of the avatar in the terminal storage unit 22 (avatar database 242), and draw each friend avatar based on the part information and the position / orientation information of the friend avatar acquired from the server device 10.
[0254] Specifically, the terminal image generation unit 258 includes a base image drawing unit 2581, a user interface drawing unit 2582, a guide information drawing unit 2583, an auxiliary information drawing unit 2584, and a warp operation drawing unit 2585. Each of the base image drawing unit 2581 to the warp operation drawing unit 2585 may be similar to each of the base image drawing unit 1581 to the warp operation drawing unit 1585 of the server device 10 described above. However, the terminal image to be drawn is only the terminal image for one terminal device 20.
[0255] The content processing unit 259 provides the user with content for each content providing position. The content to be provided to the user may be acquired from the server device 10 when a content providing condition is satisfied.
[0256] The dialogue processing unit 260 has substantially the same functions as the dialogue processing unit 160 of the above-described server device 10. The dialogue processing unit 260 executes dialogue processing related to a dialogue between users in the same group, based on each input for dialogue from a user and his / her friend users.
[0257] The parameter update unit 270 updates the values of various parameters (see FIG. 4) of the virtual camera 60 associated with the user avatar M1.
[0258] Fig. 25 is a schematic flowchart showing an example of operation by the terminal device 20 shown in Fig. 24, which is related to the terminal image generating unit 258. In Fig. 25, the terminal device 20C represents the terminal device 20 shown in Fig. 24 related to a user, and the terminal device 20D represents the terminal device 20 shown in Fig. 24 related to a user associated with one friend avatar in the same group. Note that, here, the user related to the terminal device 20D is one, but the same applies to two or more users. That is, in this case, the terminal device 20C and each of the multiple terminal devices 20D may form a pair to realize the example of operation shown in Fig. 22.
[0259] In each of the terminal devices 20C and 20D, operation input information is generated based on various inputs by the corresponding users (steps S2500 and S2501), and the generated operation input information is transmitted to the server device 10 (steps S2502 and S2508). The server device 10 transfers the operation input information received from the terminal devices 20 (here, the terminal devices 20C and 20D) of the users in the same group (steps S2504 and S2510). At this time, the server device 10 may transfer the operation input information as is, or may transmit the information after performing a predetermined processing or the like. For example, the operation input information may be converted into position / orientation information of each user avatar M1 and then transmitted. In this way, the operation input information (operation input information related to the friend avatar) is received in each of the terminal devices 20C and 20D (steps S2512 and S2506).
[0260] In the terminal device 20C, based on the operation input information generated in step S2500 and the operation input information received in step S2512 (operation input information related to the friend avatar), the position / orientation information of each user avatar M1 is updated and an image for the terminal is drawn (step S2514). At this time, the above-mentioned guide information, auxiliary information, etc. are also drawn. Similarly, in the terminal device 20D, based on the operation input information generated in step S2501 and the operation input information received in step S2506 (operation input information related to the friend avatar), the position / orientation information of each user avatar M1 is updated and an image for the terminal is drawn (step S2516). At this time, the above-mentioned guide information, auxiliary information, etc. are also drawn.
[0261] Such an operation is repeated in each of the terminal device 20C and the terminal device 20D until the corresponding user avatar M1 exits the virtual space ("YES" in step S2518, "YES" in step S2520).
[0262] Although not shown in FIG. 25, the above-mentioned dialogue processing (dialogue processing between user avatars M1 in the same group) may also be realized by exchanging voice input, etc. generated in each of terminal device 20C and terminal device 20D between terminal device 20C and terminal device 20D in a manner similar to that of the above-mentioned operation input information.
[0263] Although an embodiment of the present invention has been described in detail above with reference to the drawings, the specific configuration is not limited to this embodiment, and designs that do not deviate from the gist of the present invention are also included.
[0264] For example, in the above-described embodiment, the drawing of the guidance information may be realized by the appearance (drawing) of a leader avatar (not shown). In this case, the leader avatar can guide the guidance target user avatar M5 to the leading user avatar M6 by moving to the leading user avatar M6. That is, the user related to the guidance target user avatar M5 can easily move the guidance target user avatar M5 to the vicinity of the leading user avatar M6 by performing a movement operation input so that the guidance target user avatar M5 follows the leader avatar. In this case, the leader avatar may have an appearance or the like suggestive of the leading user avatar M6. In addition, the leader avatar may have a mode in which the guidance target user avatar M5 automatically moves to the vicinity of the leading user avatar M6 (a mode in which the leader avatar leads the hand of the guidance target user avatar M5). Such a mode may be realized in the second warp process.
[0265] In the above-described embodiment, the second warp process is realized by a warp input by a user associated with the user avatar M1 to be teleported, but the present invention is not limited to this. That is, the second warp process may be realized by a warp input by a user other than the user associated with the user avatar M1 to be teleported. For example, in the case of a specific friend relationship such as a parent-child relationship, the user avatar M1 associated with the child user may be teleported close to the user avatar M1 associated with the parent user based on a specific warp input by the parent user. In this case, the user interface for the specific warp input may be realized by a button different from the warp button 1800, for example, with a name such as a reverse warp button or a lost child button. In this case, a user-friendly movement support can be realized for users who enjoy virtual reality with their parents. Also, even if the child user cannot operate the warp button, the processing load related to drawing and the associated power consumption (reduction in the charge state of the power source) can be reduced in the terminal device 20 related to the child user.
[0266] Furthermore, in the above-described embodiment, the second warp process may be realized by the appearance of a warp area such as the warp area 1100 in the vicinity of the guidance target user avatar M5. In this case, the exit side of the warp area 1100 may be set in the vicinity of the preceding user avatar M6. In this case, the user associated with the guidance target user avatar M5 can instantly move the guidance target user avatar M5 to the vicinity of the preceding user avatar M6 simply by performing a relatively simple movement operation input to move the guidance target user avatar M5 to the nearby warp area.
[0267] In the above-described embodiment, the function of the guidance information drawing unit 1583 (the same applies to the guidance information drawing unit 2583) may be turned on / off by the user's selection.
[0268] In the above-described embodiment, regarding the second warp process for instantaneously moving the user avatar M1 to the vicinity of one friend avatar located in a space section requiring a ticket, the second predetermined position may be changed depending on the ticket possession status of the user avatar M1. For example, if the user avatar M1 has a ticket for moving into the space section, the second predetermined position may be set within the space section. On the other hand, if the user avatar M1 does not have a ticket for moving into the space section, the second predetermined position may be outside the space section (for example, at the entrance). Such a configuration is suitable when there is a ticket booth outside the space section (for example, at the entrance) that sells tickets for moving into the space section.
[0269] In addition, the following supplementary notes are disclosed regarding the above-mentioned embodiment of the present invention.
[0270] [Appendix 1] a rendering unit configured to render a display image for a terminal including one or more display media located in a virtual space; An acquisition unit for acquiring an input from a user; a position change unit that changes a position of a display medium associated with the one user in a virtual space based on a first input from the one user acquired by the acquisition unit, The drawing unit draws guidance information representing a positional relationship between a first display medium associated with the one user and a second display medium associated with another user, in association with the first display medium.
[0271] [Appendix 2] The information processing system of claim 1, wherein the guidance information includes a line or a curve.
[0272] [Appendix 3] 3. The information processing system according to claim 2, wherein the drawing unit draws the line or curve starting from the first display medium.
[0273] [Appendix 4] The information processing system described in Appendix 3, wherein the drawing unit draws the guidance information for each second display medium when multiple second display media corresponding to multiple other users are located in a virtual space.
[0274] [Appendix 5] a first warp processing unit that, when the display medium has been moved to within a predetermined area in a virtual space, moves the display medium from the predetermined area to a first predetermined position in a shorter time than the movement based on the first input; The information processing system described in Appendix 3 or 4, wherein the drawing unit draws the line or curve with the specified area as an end point based on the positional relationship between the first display medium and the second display medium in a virtual space.
[0275] [Appendix 6] The information processing system described in any one of Appendices 1 to 4, further comprising a second warp processing unit that, when the first display medium is located within a specific area in a virtual space, moves the first display medium from the specific area to a second predetermined position in response to a second input from a user associated with the first display medium in a shorter time than the movement based on the first input.
[0276] [Appendix 7] The information processing system according to claim 6, wherein the second predetermined position is set according to a position of the second display medium.
[0277] [Appendix 8] The information processing system described in Appendix 6 or 7, wherein the drawing unit draws a first operation unit for inputting the second input in an operable manner when the first display medium is located within the specific area, and draws the first operation unit in an inoperable manner when the first display medium is not located within the specific area.
[0278] [Appendix 9] the drawing unit, when the second display media corresponding to the other users are located in a virtual space, draws the first operation unit separately in association with each of the second display media; The information processing system described in Appendix 8, wherein the second warp processing unit moves the first display medium to the second predetermined position corresponding to the position of one of the second display media in response to the second input to the first operation unit corresponding to the one of the second display media.
[0279] [Appendix 10] 9. The information processing system according to any one of claims 6 to 8, wherein the specific area includes an arbitrary current position of the first display medium.
[0280] [Appendix 11] an authority information storage unit that stores authority information regarding a movement authority required for the display medium to enter a specific space portion in the virtual space; a first determination unit that determines, for each display medium, whether or not the display medium can be moved to the specific space portion based on the authority information stored in the authority information storage unit; The information processing system described in any one of Appendices 6 to 10, further comprising an invalidation processing unit that invalidates the second input for movement to the specific space when the first judgment unit determines that the first display medium cannot be moved to the specific space.
[0281] [Appendix 12] The information processing system described in Appendix 11, wherein the first determination unit determines that a first display medium can be moved to the specific space when a plurality of pieces of acquired information for the movement authorities are associated with one of the second display media and when one of the first display media satisfies a specified condition.
[0282] [Appendix 13] The information processing system according to claim 11 or 12, wherein, when the second input is disabled by the disablement processing unit, the drawing unit draws auxiliary information for canceling the disablement by the disablement processing unit.
[0283] [Appendix 14] The information processing system described in Appendix 13, wherein the auxiliary information includes at least one of information on a method for obtaining the movement authority, information on a location in a virtual space where the movement authority can be obtained, information on a link or access method to a specific screen where the movement authority can be obtained, information on benefits when the movement authority is obtained, and information on content that can be viewed when the movement authority is obtained.
[0284] [Appendix 15] the drawing unit includes a distance calculation unit that calculates a distance between the first display medium and the second display medium based on a coordinate system of a virtual space; 15. The information processing system according to any one of appendices 1 to 14, wherein the guidance information includes distance information indicating the distance calculated by the distance calculation unit.
[0285] [Appendix 16] A second determination unit that determines whether the distance calculated by the distance calculation unit is shortened based on a change in the distance calculated by the distance calculation unit, The information processing system according to claim 15, wherein the guidance information includes information representing a determination result by the second determination unit.
[0286] [Appendix 17] Rendering a display image for a terminal including one or more display media located in a virtual space; Get input from the user, changing a position of a display medium associated with a user in a virtual space based on a first input from the user; The process is executed by a computer. An information processing program, in which drawing the display image includes drawing guidance information representing a positional relationship between a first display medium associated with the one user and a second display medium associated with another user, in association with the first display medium.
[0287] [Appendix 18] A rendering step of rendering a display image for a terminal including one or more display media located in a virtual space; an acquisition step of acquiring an input from a user; a position changing step of changing a position of a display medium associated with the one user in a virtual space based on a first input from the one user acquired by the acquiring step, An information processing method executed by a computer, in which the drawing step draws guidance information representing the positional relationship between a first display medium associated with the one user and a second display medium associated with another user in association with the first display medium.
[0288] Furthermore, the following supplementary notes are disclosed regarding the above-mentioned embodiments of the present invention.
[0289] [Appendix 1] a rendering unit configured to render a display image for a terminal including one or more display media located in a virtual space; An acquisition unit for acquiring an input from a user; a position change unit that changes a position of a display medium associated with the one user in a virtual space based on a first input from the one user acquired by the acquisition unit, the drawing unit draws guidance information representing a positional relationship between a first display medium associated with the one user and a second display medium associated with another user, in association with the first display medium; The information processing system further includes a second warp processing unit that, when the first display medium is located within a specific area in a virtual space, moves the first display medium from the specific area to a second predetermined position in response to a second input from a user associated with the first display medium in a shorter time than the movement based on the first input.
[0290] [Appendix 2] The information processing system according to claim 1, wherein the second predetermined position is set according to a position of the second display medium.
[0291] [Appendix 3] The information processing system described in Appendix 1 or 2, wherein the drawing unit draws a first operation unit for inputting the second input in an operable state when the first display medium is located within the specific area, and draws the first operation unit in an inoperable state when the first display medium is not located within the specific area.
[0292] [Appendix 4] the drawing unit, when the second display media corresponding to the other users are located in a virtual space, draws the first operation unit separately in association with each of the second display media; The information processing system described in Appendix 3, wherein the second warp processing unit moves the first display medium to the second predetermined position corresponding to the position of one of the second display media in response to the second input to the first operation unit corresponding to the one of the second display media.
[0293] [Appendix 5] 4. The information processing system according to claim 1, wherein the specific area includes any current position of the first display medium.
[0294] [Appendix 6] an authority information storage unit that stores authority information regarding a movement authority required for the display medium to enter a specific space portion in the virtual space; a first determination unit that determines, for each display medium, whether or not the display medium can be moved to the specific space portion based on the authority information stored in the authority information storage unit; An information processing system as described in any one of appendixes 1 to 5, further comprising an invalidation processing unit that invalidates the second input for movement to the specific space when the first judgment unit determines that the first display medium cannot be moved to the specific space.
[0295] [Appendix 7] The information processing system described in Appendix 6, wherein the first determination unit determines that a first display medium can be moved to the specific space when a plurality of pieces of acquired information for the movement authorities are associated with one of the second display media and when one of the first display media satisfies a specified condition.
[0296] [Appendix 8] The information processing system according to claim 6 or 7, wherein, when the second input is disabled by the disablement processing unit, the drawing unit draws auxiliary information for canceling the disablement by the disablement processing unit.
[0297] [Appendix 9] The information processing system described in Appendix 8, wherein the auxiliary information includes at least one of information on a method for obtaining the movement authority, information on a location in a virtual space where the movement authority can be obtained, information on a link or access method to a specific screen where the movement authority can be obtained, information on benefits when the movement authority is obtained, and information on content that can be viewed when the movement authority is obtained.
[0298] [Appendix 10] Rendering a display image for a terminal including one or more display media located in a virtual space; Get input from the user, causing a computer to execute a process of changing a position of a display medium associated with a user in a virtual space based on a first input from the user; drawing the display image includes drawing guidance information representing a positional relationship between a first display medium associated with the one user and a second display medium associated with another user, in association with the first display medium; An information processing program that further causes a computer to execute processing related to a second warp, in which, when the first display medium is located within a specific area in a virtual space, in response to a second input from a user associated with the first display medium, the first display medium is moved from the specific area to a second predetermined position in a shorter time than the movement based on the first input.
[0299] [Appendix 11] A rendering step of rendering a display image for a terminal including one or more display media located in a virtual space; an acquisition step of acquiring an input from a user; a position changing step of changing a position of a display medium associated with the one user in a virtual space based on a first input from the one user acquired by the acquiring step, The drawing step draws guidance information representing a positional relationship between a first display medium associated with the one user and a second display medium associated with another user in association with the first display medium; An information processing method executed by a computer, further comprising a second warp processing step of, when the first display medium is located within a specific area in a virtual space, moving the first display medium from the specific area to a second predetermined position in response to a second input from a user associated with the first display medium in a shorter time than the movement based on the first input. [Explanation of symbols]
[0300] 1 Virtual reality generation system 3. Network 10. Server equipment 20 Terminal Equipment 60 Virtual Camera 70 Space section 71 Free space section 140 User Database 142 Avatar Database 144 Content information storage unit 145 Ticket information storage unit 146 Group status memory unit 150 Group setting section 152 User avatar processing unit 1521 Operation input acquisition unit 1522 User action processing unit 15221 Basic operation processing unit 15222 First Warp Processing Section 15223 Second warp processing section 158 Terminal image generation unit 1581 Base Image Drawing Section 1582 User Interface Drawing Section 1583 Guide Information Drawing Department 15831 Distance calculation unit 15832 Distance change determination unit 1584 Auxiliary Information Drawing Section 1585 Warp operation drawing section 1586 Spatial part transition drawing part 159 Contents Processing Unit 160 Dialogue processing unit 162 First movement authority processing unit 1621 Purchase Input Acquisition Department 1622 Ticket ID Generation Unit 1623 Authentication Information Notification Section 1624 Ticket Drawing Department 164 Second movement authority processing section 1640 Transfer Input Acquisition Section 1641 Certification Notification Information Department 1644 Ticket Information Rewrite Unit 166 Judgment processing unit 1661 Ticket Possession Determination Department 1662 Invalidation processing unit 170 Parameter Update Section 240 User Database 242 Avatar Database 244 Content information storage unit 245 Ticket information storage unit 246 Group Status Memory 250 Operation Input Generation Unit 251 Server Information Acquisition Unit 252 User avatar processing unit 254 Friend Avatar Processing Unit 255 Operation input transmission unit 258 Terminal Image Generation Unit 2581 Base Image Drawing Section 2582 User Interface Drawing Section 2583 Guide Information Drawing Department 2584 Auxiliary Information Drawing Section 2585 Warp operation drawing part 259 Content Processing Unit 260 Dialogue Processing Unit 270 Parameter Update Section 300 User Interface 309 Interactive Interface 350 avatar icons 351 Avatar Icons 352 Avatar Icons 360 Microphone Icon 1800(1800-1, 1800-2) Warp button
Claims
1. a rendering unit that renders a display image for a terminal including one or more display media located in a virtual space; An acquisition unit for acquiring an input from a user; a position change unit that changes a position of a first display medium associated with the one user in a virtual space based on a first input from the one user acquired by the acquisition unit, the drawing unit draws guidance information indicating a positional relationship between the first display medium and a second display medium associated with another user and supplemental guidance information supplementing the guidance information, in association with the first display medium; An information processing system in which the supplementary guidance information includes distance information and distance change information relating to the distance between the first display medium and the second display medium, and the change in the information is reflected in the display mode of a specified mark and is drawn.
2. The information processing system according to claim 1 , wherein the guidance information is drawn by lines or curves in association with the first display medium.
3. The information processing system according to claim 1 , wherein the distance information is drawn in such a manner that the number of the predetermined marks increases as the distance between the first display medium and the second display medium increases.
4. 4. An information processing system according to claim 1, wherein the distance change information is drawn in such a manner that the orientation of the specified mark differs depending on whether the distance between the first display medium and the second display medium is extended or shortened.
5. The information processing system according to claim 1 , wherein the predetermined mark as the supplemental guidance information functions as a line or a curve whose extension direction relates to the guidance information as a whole.
6. The information processing system according to claim 1 , wherein the predetermined mark as the supplementary guidance information changes in luminance or color in sequence to represent a flow as a whole.
7. The information processing system according to claim 1 , wherein the predetermined mark is drawn as a V-shaped mark.
8. 8. The information processing system according to claim 7, wherein the V-mark is drawn such that an open portion faces the first display medium side when the distance between the first display medium and the second display medium is extended, and a bent portion faces the first display medium side when the distance between the first display medium and the second display medium is shortened.
9. The information processing system according to claim 1 , wherein the guidance information is rendered along a recommended route as a guidance route for the first display medium.
10. The information processing system according to claim 9 , wherein the recommended route is set as a route passing through a content providing location that provides content desired to be shown to the one user.
11. The information processing system according to claim 9 , wherein the recommended route is set as at least one of a route that does not pass through an object related to an obstacle and a route that may pass through an object related to an obstacle.
12. A rendering process for rendering a display image for a terminal including one or more display media located in a virtual space; an acquisition process for acquiring input from a user; a position change process of changing a position of a first display medium associated with the one user in a virtual space based on a first input from the one user acquired by the acquisition process; the drawing process draws guidance information indicating a positional relationship between the first display medium and a second display medium associated with another user and supplemental guidance information supplementing the guidance information, in association with the first display medium; An information processing system in which the supplementary guidance information includes distance information and distance change information relating to the distance between the first display medium and the second display medium, and the change in the information is reflected in the display mode of a specified mark and is drawn.
13. A rendering step of rendering a display image for a terminal including one or more display media located in a virtual space; an acquisition step of acquiring an input from a user; a position changing step of changing a position of a first display medium associated with the one user in a virtual space based on a first input from the one user acquired in the acquiring step, the drawing step includes drawing guidance information indicating a positional relationship between the first display medium and a second display medium associated with another user and supplemental guidance information supplementing the guidance information, in association with the first display medium; An information processing method executed by a computer, in which the supplementary guidance information includes distance information and distance change information relating to the distance between the first display medium and the second display medium, and the change in the information is reflected in the display mode of a specified mark and drawn.
Citation Information
Patent Citations
Area guide device and program
JP2008257604A
Simulation system and its program
JP2018109835A
3D mapping of process control environment
JP2019067383A
Information processing device, information processing method, and program
WO2019130864A1
Video display device and video display method
WO2020174554A1