Program, method, and system
The system enables celebrities to manage notifications of their virtual space entries, improving user experience and space activation by allowing controlled notifications and load management.
Patent Information
- Application Number
- JP2023195234
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2023-11-16
- Publication Date
- 2026-01-15
- Estimated Expiration
- 2043-11-16
AI Technical Summary
Fans of celebrities entering a virtual space may feel hesitant to do so if their entry is consistently notified to others, potentially hindering the activation of the virtual space.
A system that allows specific users, such as celebrities, to choose whether to notify other users of their entry into a virtual space, with settings based on their preferences and evaluation values, and includes conditions for notification based on predetermined criteria.
Enhances user convenience by allowing celebrities to control notifications, promotes virtual space development through informed user engagement, and manages server load effectively.
Smart Images

Figure 0007799666000001 
Figure 0007799666000002 
Figure 0007799666000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a program, a method, and a system. [Background technology]
[0002] BACKGROUND ART Systems are known that provide a virtual space to users via a network and enable them to interact with other users in the virtual space (see, for example, Non-Patent Document 1).
[0003] In fan activities (known as oshikatsu), which involve supporting a favorite person or thing (known as oshi), such as a celebrity, it has become common to collect the latest information about the celebrity by checking posts from the celebrity themselves on social media, or posts from the accounts of the agency to which the celebrity belongs (see, for example, Non-Patent Document 2 and Non-Patent Document 3). [Prior art documents] [Patent documents]
[0004] [Non-Patent Document 1] "What is the popular virtual SNS "cluster"? Explaining what it can do and its features," [online], [searched September 22, 2023], Internet<https: / / metaversefor.me / metaverse / cluster / > [Non-patent document 2] “Twitter - Official Site”, [online], [Retrieved July 21, 2023], Internet<https: / / twitter.com / i / flow / login?redirect_after_login=%2F> [Non-patent document 3] “SNS is essential for today’s young women’s support activities,” [online], [Retrieved July 21, 2023], Internet<https: / / news.mynavi.jp / article / womansns-50 / > Summary of the Invention [Problem to be solved by the invention]
[0005] When a specific user, such as a celebrity who is the target of fan activities, enters a virtual space like the one described in Non-Patent Document 1, the fans tend to follow suit and try to enter the same virtual space. Therefore, if they can quickly obtain information that a specific user has entered, their fan activities will be more fulfilling.
[0006] However, even specific users may want to keep their entry into the virtual space a secret. If their entry is always notified to their fans, they may eventually become hesitant to enter the virtual space, which could hinder the activation of the virtual space.
[0007] The present invention was devised in light of this situation, and provides a program, method, and system that allows a specific user to choose whether or not to notify other users that the specific user has entered a virtual space. [Means for solving the problem]
[0008] (1) A program according to an aspect of the present invention is a program for causing a computer (e.g., a distribution server 100, a user terminal, etc.) to perform processing based on a user's entry status into a virtual space, Computer, Whether or not to notify other users that a specific user has entered the virtual space is determined by the specific user. Individual users A setting unit that performs processing to enable the setting (for example, a process for displaying the screen of FIG. 9(B) on the user terminal by the notification management unit 135 and the display control unit 353, etc.); When the specific user enters the virtual space and the setting state of the specific user is a setting state for notifying other users (for example, when the "Yes" icon 22Y is selected in FIG. 9(B)), the notification means functions as a notification means that can execute a process for notifying other users that the specific user has entered the virtual space. height( For example, see steps S103 to S106 in FIG. 12 and the modified example (regarding the selection of whether to notify other users). 、 Users other than the specific user are not allowed to set whether or not to notify other users of their entry. .
[0009] With this configuration, whether or not to notify other users when a specific user enters a room can be set taking into account the specific user's preferences, situation, etc., thereby improving convenience for the specific user.
[0010] (2) In the above (1), an evaluation value is set for the user that varies depending on external evaluations, which are evaluations from sources other than the user, The specific users include users who satisfy a predetermined condition according to the evaluation value.
[0011] With this configuration, other users can be notified that a specific user who meets certain conditions based on their evaluation value has entered the virtual space, making it easier for other users to obtain information about the specific user and promoting the development of the virtual space.
[0012] (3) In (2) above, the predetermined condition includes a condition that is satisfied when the evaluation value is a predetermined value (for example, as illustrated in Figure 7(A), the user attribute number is "2," "3," or "5" for celebrities or famous people, and the evaluation index is a positive value).
[0013] With this configuration, other users can be notified when a user with a predetermined value enters the room, making it easier to manage specific users who are the target of notifications to other users.
[0014] (4) In (1) above, the specific users include specific users predetermined by the operator of the virtual space (for example, celebrities or famous people with user attribute numbers such as “2,” “3,” and “5” in Figure 7(A)).
[0015] With this configuration, other users can be notified that a specific user predetermined by the administrator has entered the virtual space, making it easier for other users to obtain information about the specific user and promoting the development of the virtual space.
[0016] (5) In the above (1), when the specific user is in a setting state to notify other users of his / her entry into the virtual space, the specific user performs a selection operation to notify other users when entering the virtual space (for example, a selection operation on the “Yes” icon 22Y in FIG. 9(B) ), The notification means performs processing to notify other users that the specific user has entered the virtual space when the specific user performs a selection operation to notify the other users when entering the virtual space (see, for example, steps S103 and S104 in Figure 12, Figure 9(B), and the modified example (regarding the selection of whether to notify other users)).
[0017] With this configuration, when a specific user enters a virtual space, the specific user can select to notify other users that they have entered the virtual space, allowing the specific user to make effective notifications depending on the situation at the time of entry.
[0018] (6) In (1) above, other users who will be notified that the specific user has entered the virtual space include users who are currently in the virtual space (for example, users whose entry status in Figure 7 is "entering").
[0019] With this configuration, users who are in the virtual space are also notified that a specific user has entered the virtual space, thereby preventing users from remaining unaware that a specific user has entered the virtual space.
[0020] (7) In (1) above, the other users who are to be notified that the specific user has entered the virtual space do not include users who have entered the virtual space (for example, users whose entry status in Figure 7 is "entering"), but also include users who have not entered the virtual space (for example, users whose entry status in Figure 7 is "leaving"). (See, for example, steps S105A and S105B in Figure 13, and the modified example (regarding entry notification process 3).)
[0021] With this configuration, users who are in the virtual space are not notified that a specific user has entered the virtual space, thereby reducing the risk of the notification disrupting the sense of immersion in the virtual space.
[0022] (8) In the above (1), the virtual space includes multiple types of virtual spaces (e.g., areas, rooms for each content, etc.) that provide different content, The notification means performs a process for notifying other users every time the specific user enters one of the plurality of types of virtual spaces (see, for example, (Regarding Entry Notification Process) in the modified example).
[0023] With this configuration, other users can obtain information about a specific user's movements within the virtual space as needed, making it easier for other users to obtain information about the specific user, thereby promoting the development of the virtual space.
[0024] (9) In (1) above, The virtual space includes a plurality of types of virtual spaces that provide different contents, The notification content that the specific user has entered the virtual space includes information that enables identification of the virtual space that the specific user has entered from among the multiple types of virtual spaces (for example, displaying information about the area that the specific user has entered in the push notification of Figure 10(A), the content heading 40 of Figure 10(B), or the contents of the bulletin board object O of Figure 11).
[0025] With this configuration, it becomes possible to identify the virtual space that a specific user has entered, making it easier for other users to subsequently enter the same space, thereby promoting the development of the virtual space.
[0026] (10) In (1) above, even if the specific user enters the virtual space, the notification means does not perform processing to notify other users that the specific user has entered the virtual space if a predetermined time has not elapsed since the specific user's previous entry into the virtual space (see, for example, the modified example (regarding entry notification processing)).
[0027] According to this configuration, it is possible to avoid notifications being issued multiple times in a short period of time, thereby suppressing discomfort caused by too many notifications.
[0028] (11) In the above (1), the computer functioning as a storage means for storing, for each user, a selected specific user previously selected by the user from among the specific users in response to an operation from the user (for example, selection of a follow in a virtual space or a favorite talent in a fan community app); When the user who has entered the virtual space is the specific user, the notification means performs processing to notify users who have selected the specific user as the selected specific user that the specific user has entered the virtual space (see, for example, Figure 10, variant example (for other examples of users who will be notified to other users)).
[0029] According to this configuration, information about a specific user who is a pre-selected favorite can be notified, thereby improving the satisfaction level with the notified information.
[0030] (12) A computer control method according to an aspect of the present invention is a method for causing a computer to perform processing based on a user's entry into a virtual space, the method comprising: Whether or not to notify other users that a specific user has entered the virtual space is determined by the specific user. Individual users performing a process to enable the setting; and a step of executing a process for notifying other users that the specific user has entered the virtual space when the specific user has entered the virtual space and the setting state of the specific user is a setting state for notifying other users. 、 Users other than the specific user are not allowed to set whether or not to notify other users of their entry. .
[0031] With this configuration, whether or not to notify other users when a specific user enters a room can be set taking into account the specific user's preferences, situation, etc., thereby improving convenience for the specific user.
[0032] (13) A system according to an aspect of the present invention is a system including a computer that performs processing based on a user's entry status into a virtual space, Whether or not to notify other users that a specific user has entered the virtual space is determined by the specific user. Individual users a setting means for performing a process to enable the setting; and a notification means for executing a process for notifying other users that the specific user has entered the virtual space when the specific user has entered the virtual space and the setting state of the specific user is a setting state for notifying other users. 、 Users other than the specific user are not allowed to set whether or not to notify other users of their entry. .
[0033] With this configuration, whether or not to notify other users when a specific user enters a room can be set taking into account the specific user's preferences, situation, etc., thereby improving convenience for the specific user. [Brief explanation of the drawings]
[0034] [Figure 1] FIG. 1 illustrates an example of a hardware configuration of a communication system. [Figure 2] FIG. 1 is a diagram illustrating the concept of an overall image of a virtual space provided by a distribution server. [Figure 3] FIG. 2 is a diagram illustrating the configuration of a distribution server. [Figure 4] FIG. 2 is a diagram illustrating a configuration of an administrator terminal. [Figure 5] FIG. 2 is a diagram for explaining the configuration of a specific user information medium management server. [Figure 6] FIG. 2 is a diagram for explaining in detail the configuration of a user terminal (user terminal and broadcasting user terminal). [Figure 7] FIG. 2 is a diagram showing an example of user information stored in a storage unit of a distribution server. [Figure 8] FIG. 10 is a diagram showing an example of the relationship between users' evaluation indices stored in the storage unit of the distribution server and the servers. [Figure 9] FIG. 10 is a diagram showing an example of a screen of a user terminal when entering a virtual space in the present embodiment. [Figure 10] FIG. 10 is a diagram showing an example of a notification screen displayed on a user terminal in the present embodiment. [Figure 11] FIG. 10 is a diagram showing another example of a notification screen displayed on a user terminal in the present embodiment. [Figure 12] FIG. 10 is a diagram for explaining a flowchart of an example of an entry notification process of the distribution server according to the present embodiment. [Figure 13] FIG. 10 is a diagram for explaining a flowchart of an example of an entry notification process of a specific user information media management server in the present embodiment. [Figure 14]FIG. 10 is a diagram for explaining a flowchart of another example of the entry notification process of the distribution server in the present embodiment. [Figure 15] FIG. 10 is a diagram for explaining a flowchart of another example of the entry notification process of the distribution server in the present embodiment. [Figure 16] FIG. 2 is a diagram illustrating an example of a system configuration of a distribution server according to the present embodiment. [Figure 17] FIG. 2 is a diagram illustrating an example of a system configuration of a distribution server according to the present embodiment. [Figure 18] FIG. 10 is a diagram for explaining a flowchart of an example of virtual space providing server reinforcement processing in the present embodiment. [Figure 19] FIG. 10 is a diagram for explaining a flowchart of an example of distribution information amount change processing according to the present embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0035] An overview of the present invention will be described below. In this embodiment, the virtual space (metaverse space) is used by multiple users. The multiple users can be broadly divided into specific users (also called special users) and other users. Specific users include, for example, celebrities and famous people. Celebrities, etc., may have fans. Therefore, if fans can quickly obtain information that a celebrity, etc., has entered the virtual space and follow the celebrity into the same virtual space, their fan activities will be enriched. Therefore, in this embodiment, it is possible to notify other users that a specific user has entered the virtual space. This will further enrich the fan activities of fan users who support the specific user.
[0036] Furthermore, when a specific user enters a virtual space, it is likely that an increase in the number of other users entering the space may occur, which may increase the load on the distribution server that provides the virtual space to the user. Therefore, in this embodiment, it is possible to change the resources of the server that provides the virtual space in advance, provided that the specific user has entered the virtual space (including logging in). Furthermore, it is possible to perform processing to reduce (alleviate) the amount of information distributed from the distribution server that provides the virtual space to the user terminal, provided that the specific user has entered the virtual space. These processes of changing the server's resources and reducing the amount of information enable the distribution server to withstand the expected increase in load due to the specific user's entry into the virtual space. In this way, by taking measures to reduce the load on the distribution server in advance, it is possible to smoothly process the entry and distribution of users who attempt to enter the virtual space following the specific user, thereby improving user satisfaction.
[0037] Hereinafter, an embodiment of a communication system according to the present invention will be described with reference to the drawings. Note that the present invention is not limited to the following examples, but is defined by the claims, and all modifications within the meaning and scope equivalent to the claims are intended to be included in the present invention. In the following description, the same elements in the description of the drawings will be given the same reference numerals, and redundant explanations will not be repeated.
[0038] FIG. 1 is a diagram illustrating an example of the hardware configuration of a communication system 1. The communication system 1 includes a distribution server 100, an administrator terminal 200, multiple user terminals 300a, 300b, 300c, etc., multiple broadcast user terminals 400a, 400b, 400c, etc., and a specific user information media management server 500. The multiple user terminals 300a, 300b, 300c, etc. are terminals owned by multiple users, respectively, and are hereinafter collectively referred to as user terminals 300. The multiple broadcast user terminals 400a, 400b, 400c, etc. are terminals owned by multiple broadcast users who are users who can independently distribute content, and are hereinafter collectively referred to as broadcast user terminals 400. The user terminals 300 and broadcast user terminals 400 are both used by users, and are hereinafter collectively referred to as user terminals.
[0039] The distribution server 100, administrator terminal 200, user terminal 300, distribution user terminal 400, and specific user information media management server 500 can each be connected to a network 2 for communication and can send and receive information (data) in both directions. The network 2 is, for example, the Internet, and is composed of access networks such as a LAN (Local Area Network), a WAN (Wide Area Network), a mobile communication network (for example, 5G, wireless network, etc.), a wired telephone network, FTTH (Fiber To The Home), and a CATV (Cable Television) network.
[0040] The distribution server 100 is, for example, a computer such as a workstation or a personal computer having a communication function. The distribution server 100 manages a plurality of virtual spaces (also called metaverse spaces, for example) which are virtual worlds constructed on a computer, and provides a service (content) using a virtual space selected by a user via the network 2.
[0041] In this embodiment, users can participate in a virtual space provided by distribution server 100 in response to operations on their user terminals, and engage in activities, actions, and statements through user characters, etc. Furthermore, users in this embodiment include general consumers, talents, and celebrities. Talent includes celebrities from various genres, such as talents belonging to service providers (operating companies), entertainers, actors and actresses, comedians, multi-talented individuals, presenters, news anchors, singers, musicians, models, and other influencers. Celebrities also include celebrities from various genres, such as famous company executives or employees, athletes, e-sports players, famous scholars, intellectuals, cram school instructors, and famous students. Furthermore, a person may be determined to be an influencer and processed based on the number of followers in the follow function in the virtual space provided by distribution server 100.
[0042] Content provided using virtual spaces is managed and configured for each type of content. Available content includes, but is not limited to, content that allows users to view and experience games, live performances, events, and programs, as well as content that allows users to interact and communicate with each other using chat and emotes. Users access the distribution server 100 using the user terminal 300 or the distribution user terminal 400 and select the desired content, allowing them to seamlessly participate in (roam) the content and view and experience the virtual space corresponding to the content.
[0043] Depending on the type of content, virtual spaces include three-dimensional spaces (spaces constructed based on three-dimensional data) generated by CG (Computer Graphics) and two-dimensional spaces (spaces constructed based on two-dimensional data). Virtual spaces also contain virtual characters (avatar objects), objects representing backgrounds and virtual objects according to the type of content, and menu objects selectable by users. Virtual characters placed in virtual spaces include user characters that are preset for each user participating in the virtual space and can move in response to user operations, and non-player characters that move based on a program.
[0044] Examples of objects placed in a virtual space include, in the case of game content, item objects corresponding to the game, character objects corresponding to the game, and user characters (hereinafter also referred to as user avatars) of users playing the game content placed on a field object corresponding to the game field. In the case of live content, for example, stage objects, audience seating objects, and lighting objects are placed, and user characters of entertainers who are conducting the live performance are placed on the stage object, and user characters of participating users are placed on the audience seating object. In the case of content that facilitates communication, for example, user characters of multiple participating users and item objects that can be used for communication are placed. Additionally, a space modeled after a city may be provided, and objects such as signs and bulletin boards, not limited to those that enable communication between users, may be placed to enable users to obtain and view information both inside and outside the virtual space.
[0045] The distribution server 100 stores information for displaying images in a plurality of virtual spaces corresponding to the distributable content on a user terminal and sound information for outputting sound in the storage unit 120. In addition, the distribution server 100 provides content (services) to users by distributing content data including display information for displaying images in the virtual space of the corresponding content and sound information for outputting sound in response to access from the user terminal.
[0046] The content data includes, for example, information for identifying information about objects placed in the virtual space (e.g., the type of object, its location, orientation, posture, and appearance), information about the user characters of each user participating in the virtual space (e.g., the type of user character, its location, orientation, posture, appearance, motion data, and audio data), objects representing backgrounds and virtual objects according to the type of content, and information for identifying menu objects selected by the user. The amount of information about objects and user characters displayed can be increased or decreased by the data distribution unit 132 of the distribution server 100 or by a user's arbitrary setting operation on the user terminal. An increase or decrease in the amount of displayed information can include, for example, an increase or decrease in the number of user avatars that can be displayed in the virtual space, an increase or decrease in the number of objects, or an increase or decrease in image resolution.
[0047] Objects in the virtual space change their posture, position, and facial expression in response to operations from the user terminal, and the appearance of the placed objects changes over time. Therefore, by distributing content data at predetermined intervals (e.g., every 0.016 seconds, which corresponds to approximately 60 fps), images in the virtual space that change from moment to moment can be displayed on the user terminal. The content data distributed at predetermined intervals may be distributed in response to the distribution server 100 receiving a synchronization request signal transmitted from the user terminal. The timing of the predetermined intervals may also vary depending on the load on the distribution server 100. For example, as the load increases, the number of synchronizations per second may be gradually reduced from six to three to one. Furthermore, the distribution server 100 may transmit information (request information) to the user terminal to enable the user terminal to perform processing to reduce the frequency of transmission of synchronization requests. Even if a request for content data is received from the user terminal, the interval between responses from the distribution server 100 to the request may become longer as the load increases.
[0048] The distribution server 100 also manages programs and data that enable the user terminal to progress (play) content such as live events and games. For example, when a user selects game content, the distribution server 100 distributes to the user terminal programs and data for providing services using the virtual space of the game content. Note that the timing of distribution of the programs and data for progressing through the content from the distribution server 100 is not limited to when the user selects the content, but may also be when the user logs in to the distribution server 100 or when a predetermined achievement condition is met.
[0049] The administrator terminal 200 is used by the operator of the service provider company. The administrator terminal 200 is, for example, a computer with operation input functions and communication functions, such as a personal computer. The administrator creates, builds, modifies, and updates content and images in the virtual space managed in the storage unit 120 of the distribution server 100 via the administrator terminal 200. For example, new content and images in the virtual space are generated and built, and existing content and images in the virtual space are changed and modified. The administrator also sets and updates information managed in the storage unit 120 of the distribution server 100 via the administrator terminal 200. For example, the administrator sets and updates evaluation indices (evaluation values) and attributes (e.g., attribute types and attribute numbers) associated with each user of the user information managed in the storage unit 120 of the distribution server 100. The administrator terminal 200 may also create, build, modify, and update content managed in the storage unit 520 of the specific user information media management server 500. The administrator sets and updates the information managed in the storage unit 520 of the specific user information media management server 500 via the administrator terminal 200 .
[0050] The specific user information medium management server 500 is, for example, a computer such as a workstation or personal computer with a communication function. The specific user information medium is a fan community app related to a specific user (e.g., a talent) or a website where information about the specific user can be viewed. The operator (subject) who operates the specific user information medium may be the same as or different from the operator or operator of the distribution server 100 or the administrator terminal 200. The specific user information medium management server 500 may, for example, manage multiple pieces of content that can be provided to users and manage communities to which the content is provided. The specific user information medium management server 500 provides the content in response to a request from a user via the network 2.
[0051] The content provided by the specific user information media management server 500 is managed and configured by type. This content informs viewers of specific information, including video, audio, and text. This specific information includes information about specific users. Information about specific users managed by the specific user information media management server 500 includes, for example, news and announcements by the operator (administrator), user posts, posted information such as streaming videos related to specific users provided by external web services using a web API, schedule information for streaming videos related to specific users, and information about specific users' movements, including information on specific users' entry and exit into virtual spaces. This content can be provided to users by displaying it on the user's terminal via a web browser or a dedicated application on a smartphone or other device.
[0052] The specific user information medium management server 500 stores information for displaying text, images, etc. corresponding to content that can be provided to users on the user terminal and sound information for outputting sound in the storage unit 520. In addition, the distribution server 100 provides content (services) to users by distributing content data including display information for displaying text, images, etc. of the corresponding content and sound information for outputting sound in response to access from the user terminal.
[0053] In this embodiment, the distribution server 100, the administrator terminal 200, and the specific user information media management server 500 are each independent computers (devices), but they may be realized by a single computer, or the functions of one of these computers (e.g., the distribution server 100, the specific user information media management server 500) may be realized by multiple computers (e.g., multiple servers).
[0054] The user terminal 300 is used by a user who wants to view, experience, etc. the content. The user terminal 300 may be, for example, a computer with operation input functions and communication functions, such as a personal computer, a tablet terminal, or a smartphone. Note that the user terminal 300 may have a motion capture function that captures the user's movements, similar to the broadcasting user terminal 400 described below.
[0055] In response to operations on the terminal, the user terminal 300 communicates with the distribution server 100 and the specific user information media management server 500 to receive content data of content selected by the user. Based on the content data received from the distribution server 100, the user terminal 300 constructs a virtual space of the content selected by the user from the virtual spaces constructed in the distribution server 100 in the storage area of the user terminal 300, and displays images and outputs sounds within the virtual space. This makes it possible to view, experience, etc. the virtual space of the content via the user terminal 300.
[0056] Furthermore, based on the content data received from the specific user information media management server 500, the user terminal 300 constructs information on the content selected by the user from the content (for example, articles or schedule information) managed by the specific user information media management server 500 in the storage area of the user terminal 300, and displays images and text of the content. This enables the user to identify and recognize the content information (including information about the specific user) via the user terminal 300.
[0057] Furthermore, the user terminal 300 accepts operations on the displayed virtual space and objects, various icon selection operations, content selection operations, character input operations, etc. The user terminal 300 transmits information corresponding to operations on the terminal to the distribution server 100, and can cause the user's user character to act, move, etc. in the virtual space of the content in which the user is participating. As described above, based on the content data transmitted from the distribution server 100 at predetermined time intervals, the movement of the user character can be reflected (synchronized) in the virtual space of each user terminal 300 of users participating in the same content.
[0058] Furthermore, the user terminal 300 allows users to view, experience, etc. the virtual space of the content, and can post comments containing arbitrary messages as examples of actions to be taken in the virtual space of the content in response to operations on the terminal. By posting a comment, the comment can be reflected on each user terminal 300 so that the users participating in the content can confirm the comment.
[0059] Furthermore, user terminal 300 stores programs and data distributed from distribution server 100 when content is selected by the user, and based on the programs and data, displays a virtual space corresponding to the selected content and enables progression (play) of the content. For example, if area Y, a space modeled after a city, is selected by the user on the title screen, data including a program for displaying area Y is received and stored, and area Y is displayed on the display unit of user terminal 300 based on the data. Furthermore, if specific game content is selected within the virtual space of any area (or the area itself may be a space providing game content), data including a program for playing the game content is received and stored, enabling the game content to be played.
[0060] Broadcast user terminal 400 is used by a broadcast user who can broadcast content. Broadcast user terminal 400 has an operation input function and a communication function, as well as a motion capture function that captures the broadcast user's movements (for example, a head-mounted device (HMD), a device equipped with an imaging device that analyzes the user's movements from images captured by the imaging device, etc.). Note that an HMD is worn on the user's head, and the user holding a controller that can communicate with the HMD can operate the displayed virtual space and virtual characters by moving their head or hands or operating buttons on the controller.
[0061] The broadcast user terminal 400 acquires motion information for identifying the broadcast user's head or hand movements and controller operations, and audio information for identifying the broadcast user's voice, and transmits these to the broadcast server 100, thereby reflecting the movements and audio of the broadcast user's user character in the virtual space in which the broadcast user is participating. This allows the broadcast user's user character to operate in the virtual space as if it were the broadcast user's alter ego. As described above, based on the content data transmitted from the broadcast server 100 at predetermined time intervals, the movements and audio of the broadcast user's user character in the virtual space can be reflected (synchronized) in the user terminals of users (including the broadcast user) participating in the virtual space.
[0062] A broadcast user may be a general user (simple viewer / participant) who uses a terminal with the same configuration as the broadcast user terminal 400 as the user terminal 300 to view and experience the broadcast content, or may be a general user who uses a separate terminal with a different configuration from the broadcast user terminal 400 as the user terminal 300. The broadcast user terminal 400 and the user terminal 300 may have the same configuration or may be different terminals. A broadcast user may participate in a virtual space in the role of a broadcaster who broadcasts content, or in the role of a general user (simple viewer / participant) rather than in the role of a broadcaster. For this reason, a broadcast user is included in the term "user." A broadcast user can select or change which role they are in at specific times (e.g., when logging in, when starting content broadcasting, when displaying the broadcast user's user character in the content to be broadcast, etc.).
[0063] <Overall image of virtual space> FIG. 2 is a diagram illustrating the overall concept of the virtual space provided by the system 1 of this embodiment. The virtual space ER of this embodiment includes multiple types of spatial areas ER (spatial area ER1, spatial area ER2, etc.). Each spatial area ER can provide content of different genres and types. The multiple types of spatial areas ER are areas selected from a title screen displayed after a user logs in to the virtual space ER, and include areas corresponding to various types of content, such as an entrance, a live music venue, game content, and an exhibition hall. For example, an event venue where live content is held is constructed in the entirety of a specified spatial area ER, or in part of a specified spatial area ER.
[0064] Each spatial area ER has multiple rooms providing the same content. Each room has a set maximum number of users that can enter the room, up to 200 people, for example. Each room is managed, for example, by a real-time synchronization server. Users in the same room can see each other's user avatars and communicate with each other. For example, they can play games together or chat. For example, if the spatial area ER1 is a space modeled after a city, the rooms ER1a, ER1b, etc. corresponding to the spatial area ER1 provide users with spaces modeled after the same city, but the only avatars that can be displayed in the space are those corresponding to users associated with the same room. For example, the user avatar 1 of a user associated with room ER1a is not displayed on the user screen of a user associated with room ER1b. However, as an exception, the user avatar of a special user (e.g., a celebrity) can be displayed not only in the room they are actually in but also in other rooms.
[0065] Movement between spatial areas ER may be restricted to one spatial area ER after logging in to the virtual space, unless the user first passes through a spatial area ER designated as an area providing specific content (e.g., an entrance). Alternatively, movement between spatial areas ER may be permitted. For example, movement from spatial area ER2 to spatial area ER3 may be restricted to one spatial area ER1 without passing through spatial area ER1, or movement between spatial areas ER2 and ER3 may be permitted directly without passing through spatial area ER1. Furthermore, when moving between spatial areas ER, a switching effect may be implemented. For example, when moving to another spatial area ER, the display screen may be switched to black (e.g., a black screen with a message such as "Loading..."). Furthermore, regarding access to each spatial area ER, the user may first enter an entrance area after logging in, or the user may be able to select and enter a spatial area ER of their choice without passing through the entrance area, or the user may transition to a spatial area ER randomly determined by lottery. Regarding each room, the user may select a room of their choice to enter, or may enter a room randomly determined by lottery. Hereinafter, the virtual space ER may also be simply referred to as the virtual space.
[0066] In this embodiment, entering a virtual space includes logging in to the virtual space and entering a room.
[0067] <Distribution server configuration> Next, the configuration of distribution server 100 will be described. As shown in Fig. 3, distribution server 100 includes a communication unit 110 that communicates with other computers, a storage unit 120 that stores various data, and a control unit 130 that controls the entire computer. Communication unit 110, storage unit 120, and control unit 130 are interconnected by a bus line. Note that each function may be defined as a server (container) on a virtualized server and executed as a server.
[0068] The communication unit 110 is a communication interface equipped with a NIC (Network Interface Card controller) for wired or wireless communication. The communication unit 110 communicates with other computers via the network 2. For example, the communication unit 110 functions as an interface for allowing other computers to acquire part of the information stored in the storage unit 120 (for example, the entry and exit status of each user in the virtual space, an evaluation index, an attribute number, etc.).
[0069] The storage unit 120 is composed of RAM (Random Access Memory), ROM (Read Only Memory), flash memory, HDD (Hard Disk Drive), etc. The storage unit 120 stores programs for executing various control processes (for example, programs for managing and providing content using virtual spaces), various data, etc. The various data stored in the storage unit 120 includes information for identifying images of virtual spaces provided for each type of content, user information 121 related to users, etc. Information for identifying images of virtual spaces includes, for example, object data 122.
[0070] The control unit 130 is configured with a CPU (Central Processing Unit), etc. The control unit 130 executes a program stored in the storage unit 120 to control the overall operation of the distribution server 100 and perform various calculations, etc.
[0071] The following describes the functional configuration of the control unit 130. The control unit 130 functions as at least a content management unit 131, a data distribution unit 132, a user management unit 133, an entry / exit processing unit 134, a notification management unit 135, and a scale management unit 136. The various functions may be performed by separate servers, or, for example, multiple functions may be executed on one server (for example, a virtual server).
[0072] The content management unit 131 stores and updates, via the communication unit 110, information for identifying images in the virtual space corresponding to the content set by the administrator terminal 200 in the storage unit 120. The content management unit 131 stores, for example, information for identifying the type of content set by the administrator terminal 200, information for identifying images in the virtual space for each piece of content, and, for content such as live performances or programs that are distributed at a predetermined date and time, information for identifying the date and time of distribution in the storage unit 120. The information for identifying images in the virtual space includes information about objects placed in the virtual space and user characters corresponding to users participating in the virtual space. The information for identifying the type of content includes information for identifying areas in the virtual space that can be provided to users, information about events being held, and the like.
[0073] Furthermore, the content management unit 131 performs processing for providing and associating content and rooms to a user in response to a request from the user terminal via the communication unit 110. For example, in response to a content information acquisition request from the user terminal 300, the content management unit 131 transmits information for identifying content information that can be provided to the user at the user terminal. For example, this information is information related to areas and rooms in the virtual space. Based on this content information, the display unit of the user terminal 300 can display areas X to Z and the rooms corresponding to each area on the title screen exemplified in FIG. 9(C). The content management unit 131 performs processing for associating and storing the area and room ID selected by the user as user information 121.
[0074] The data distribution unit 132 distributes content data to the accessing user terminal at predetermined intervals, for example, to display images in the virtual space of the content selected on each terminal and managed by the content management unit 131. Furthermore, the data distribution unit 132 performs, upon manual operation by the administrator from the administrator terminal 200 or upon the establishment of preset conditions, processes such as increasing or decreasing the resolution of the texture of images displayed on the user terminal, increasing or decreasing the number of objects that can be displayed, or changing the amount of information to change the number of synchronizations with the user terminal. For example, when the computer resource usage rate exceeds a predetermined threshold due to an increase in server load (e.g., when the current metrics or the metrics from the past few times exceed a certain threshold), or when a condition set assuming an increase in server load is established (e.g., when a specific user logs in), the data distribution unit 132 performs a process to reduce (alleviate) the amount of information (data amount) for displaying and outputting the virtual space that can be distributed to the user terminal via the communication unit 110.
[0075] The process of reducing (alleviating) the amount of information sent to the user terminal by the data delivery unit 132 includes reducing the amount of information itself sent from the data delivery unit 132 to the user terminal before delivering it, reducing the number of times synchronization is performed from the data delivery unit 132 to the user terminal, or transmitting a signal from the data delivery unit 132 to the user terminal to cause the user terminal to reduce the amount of information itself requested from the distribution server 100. For example, when the number of users entering the virtual space increases, causing congestion and a heavy load in the virtual space, congestion information can be transmitted to the user terminal. Upon receiving the congestion information, the user terminal can be configured to reduce the amount of information requested from the distribution server 100 (for example, by a program stored in the storage unit of the user terminal), thereby reducing the amount of information delivered in response to a request from the user terminal. For example, the overall amount of information delivered to the user terminal can be reduced by reducing the amount of information itself, such as image resolution, or by reducing the number of times the user terminal transmits a signal requesting synchronization to the distribution server 100. In addition, the congestion information may be congestion information sent when the entire virtual space becomes congested, or congestion information sent when the room the user is in becomes congested (when the maximum number of people in the room is reached or when a certain number of people is reached before the maximum number of people is reached).
[0076] The user management unit 133 stores and updates user information about users in the storage unit 120. For example, the user information is stored in a database as user information 121. The user information about users includes, for example, an ID for identifying the user, a username, a user's evaluation index and attribute number, and information about each user's entry and exit status in the virtual space. The evaluation index and attribute number may be values determined in advance by the administrator or may vary depending on the user's behavior, the number of followers on social media or in the virtual space, etc. The information about each user's entry and exit status in the virtual space includes entry and exit information for logging in and out of the virtual space, and entry and exit information that identifies the area and room they are in. For example, it can be determined that Area X is currently in Room ID 001, which is provided. The user's behavior history in the virtual space is also acquired and stored in the storage unit 120. The behavior history includes, for example, location information in the virtual space and a participation content history (participation event history). The user management unit 133 can calculate the degree of relationship with other users (for example, the degree of intimacy or the amount of tipping to other users) according to the behavioral history, and can associate the user with other users.
[0077] The entry / exit processing unit 134 processes a user's entry into or exit from the virtual space in response to access from the user terminal via the communication unit 110. The user's entry detected by the entry / exit processing unit 134 includes logging into the virtual space and entering a room within the virtual space after logging in. For example, it includes a function to detect user logins using a login authentication API server and a function to manage user room entry / exit information using a user authentication unit of a real-time synchronization server. The login authentication API server may authenticate a user's login when the distribution server 100 receives information indicating a successful login in another authentication system (e.g., a single sign-on system). When the entry / exit processing unit 134 detects a user's entry into the virtual space (including login), the control unit 130 may perform processing related to changing server settings or issuing notifications to other users.
[0078] When the entry / exit processing unit 134 detects that a user has entered (logged in) into the virtual space, if the entered user is a specific user who meets predetermined conditions, the notification management unit 135 issues a notification (notification) via the communication unit 110 so that other users, including the administrator, are notified of the entry. Also, if the user terminal allows selection of whether or not to notify other users of the entry, and if a selection is made not to notify other users (a selection is not made to notify other users), control is performed so that other users are not notified even if a specific user who meets predetermined conditions has entered the room.
[0079] Examples of notification modes via communication unit 110 include notification to administrator terminal 200 operated by the administrator, notification to a user terminal via a notification function (such as a push notification) of an app for displaying the virtual space provided by distribution server 100 or a community app managed by specific user information media management server 500, or notification to other users by making information about the entry status (for example, information about a specific user) downloadable in response to a user request (viewing request). By making information about the entry status downloadable in response to a user request (viewing request), for example, a web page (which may be a predetermined page within an app) that can display a list of users' entry statuses can be configured to use an API to have another computer obtain the entry status of a specific user, and the information can be displayed when obtainable, or the user's entry status can be displayed on a bulletin board object or the like that allows users' entry statuses in the virtual space to be checked.
[0080] A viewing request is a request from a user terminal to the distribution server 100 or the specific user information media management server 500 for information to display a web page (or a specific page in an application (e.g., a community application)) or a specific image in a virtual space (e.g., information displayed on a bulletin board object, etc.) on the user terminal. For example, a viewing request is made (sent) from the user terminal to the server by accessing a specific web page, selecting a specific icon in an application, or selecting a specific object in the virtual space (or moving to a specific location, etc.). Furthermore, information regarding the user's entry status may be updated and stored in the storage unit 120 so that it can be downloaded upon request from the user. For example, the information is updated as information for a specific user. Hereinafter, a notification (e.g., a push notification) may also be referred to as a notification, regardless of whether or not the user has made a viewing request.
[0081] The scale management unit 136 performs resource increase / decrease (scaling) processing of the distribution server 100. Resource increase / decrease processing includes scale-out, which horizontally scales resources to increase the number of servers (also referred to as increasing the number of resources), scale-up, which vertically scales resources to increase the performance of the server's CPU or memory, scale-in, which reduces the number of servers, and scale-down, which reduces the performance of servers. The resource increase / decrease processing is performed by a manual operation by the administrator from the administrator terminal 200 or when a preset condition is met. For example, the resource increase / decrease processing is performed when the computer resource usage rate exceeds a predetermined threshold due to an increase in server load (e.g., when the threshold is exceeded by referencing current metrics or metrics from the past few times), or when a condition is met that assumes an increase in server load (e.g., a specific user logs in).
[0082] Furthermore, when an upper limit on the number of users in a room (the number of users that can be associated with one room) is set, the resource increase / decrease process may be performed by increasing resources to increase the number of rooms when the upper limit is reached due to users entering the room (for example, when the upper limit is reached, or when a predetermined number of users is reached just before the upper limit is reached). For example, if one room is defined per server, the number of servers may be increased, or multiple rooms may be defined per server, and processing may be performed to improve the processing performance of each server to create a resource state that can handle the increase in rooms. Note that the servers of distribution server 100 may be configured to perform load balancing processing as needed in addition to scaling.
[0083] The servers whose scale is managed by the scale management unit 136 include, for example, a login authentication API server that functions as the entry / exit processing unit 134, a lobby API server that functions as the content management unit 131 that allows users to obtain information such as a list of areas and rooms, or a server corresponding to a room. Note that one server may have one room, or multiple rooms may be defined.
[0084] <Administrator terminal configuration> Next, the configuration of administrator terminal 200 will be described. As shown in Fig. 4, administrator terminal 200 includes a communication unit 210 that communicates with other computers, a storage unit 220 that stores various data, an input unit 230 for inputting operations, etc., an output unit 240 for outputting images, sounds, etc., and a control unit 250 that controls the entire computer. Communication unit 210, storage unit 220, input unit 230, output unit 240, and control unit 250 are connected to each other by a bus line.
[0085] The communication unit 210 is a communication interface equipped with a NIC for wired or wireless communication. The communication unit 210 communicates mainly with the distribution server 100 and the specific user information media management server 500 via the network 2. The storage unit 220 is composed of RAM, ROM, etc. The storage unit 220 stores programs for executing various control processes (for example, programs for managing content using virtual space), various data, etc.
[0086] The input unit 230 includes an input device (for example, a touch panel, a touch pad, a pointing device such as a mouse, a keyboard, etc.) for receiving input operations from the administrator. The output unit 240 includes an output device (a display, a speaker, etc.) for presenting information to the administrator.
[0087] The control unit 250 is configured with a CPU, etc. The control unit 250 controls the overall operation of the administrator terminal 200 by executing the programs stored in the storage unit 220.
[0088] The following describes the functional configuration of the control unit 250. The control unit 250 functions as at least a content setting unit 251, a user setting unit 252, and a distribution server management unit 253.
[0089] The content setting unit 251 stores and updates information about the content and virtual space managed by the content management unit 131 of the distribution server 100 in response to operations on the administrator terminal 200. This allows, for example, information for specifying content, information for specifying images in the virtual space for each piece of content, information for setting and specifying information for specifying the date and time of distribution, and the like to be stored and updated in the storage unit 120. Furthermore, the information that the content setting unit 251 can store and update in the storage unit 120 can be set for each area and room.
[0090] Furthermore, the content setting unit 251 stores and updates information relating to content managed by the content management unit 531 of the specific user information media management server 500 in response to an operation on the administrator terminal 200. This allows, for example, information for specifying content (for example, articles about a specific user, trend information, etc.) to be stored and updated in the storage unit 520.
[0091] The user setting unit 252 sets user information about users managed by the user management unit 134 of the distribution server 100 or the user management unit 533 of the specific user information media management server 500 in response to operations on the administrator terminal 200. Setting the user information includes, for example, setting an evaluation index for each user. Setting the evaluation index includes setting an evaluation index for each user shown in FIG. 7 (described later), setting criteria for calculating the evaluation index, and setting attribute numbers and types for each user. For example, an administrator operating the administrator terminal 200 can assign or change attribute numbers to specific users in advance so that general users can be distinguished from specific users who are different from general users. A specific user is, for example, a celebrity or a famous person. For example, a celebrity who is a target of support in a fan community app is considered a specific user, and fan users who support the specific user in the community are considered general users.
[0092] The distribution server management unit 253 performs processing for making settings related to scaling of the distribution server 100 and settings related to the amount of information distributed from the distribution server 100 to user terminals. For example, it stores and updates in the storage unit 120 a program for increasing or decreasing the resources (scaling) in the scale management unit 136, and a program for information amount variation processing for increasing or decreasing the resolution or the number of objects for displaying the virtual space distributed by the data distribution unit 132 of the distribution server 100. In addition, it stores and updates in the storage unit 120 the conditions for a specific user that are included in the conditions for varying the information amount variation processing and scale-related settings of the distribution server 100.
[0093] <Configuration of specific user information media management server> Next, the configuration of the specific user information medium management server 500 will be described. As shown in Fig. 5, the specific user information medium management server 500 includes a communication unit 510 that communicates with other computers, a storage unit 520 that stores various data, and a control unit 530 that controls the entire computer. The communication unit 510, storage unit 520, and control unit 530 are interconnected by a bus line. Note that each function may be defined as a server (container) on a virtualized server and executed as a server.
[0094] The communication unit 510 is a communication interface that includes a network interface card (NIC) for performing wired or wireless communication. The communication unit 510 communicates with other computers via the network 2.
[0095] The storage unit 520 is composed of RAM (Random Access Memory), ROM (Read Only Memory), flash memory, HDD (Hard Disk Drive), etc. The storage unit 520 stores programs for executing various control processes (e.g., programs for managing and providing content), various data, etc. The various data stored in the storage unit 520 include posted information and trend information for each type of content, user information about users, etc. The information about users includes the user ID in the specific user information medium, attribute numbers and evaluation indices for each user, information for identifying specific users selected in advance by the user (also referred to as selected as favorites), and the user ID of the user information 122 stored in the storage unit 120 of the distribution server 100. For example, based on the information about users stored in the storage unit 520, the user ID in the distribution server 100 can be associated with the user ID in the specific user information medium management server 500 for the same user. The user ID in the distribution server 100 and the user ID in the specific user information medium management server 500 may be the same ID.
[0096] The control unit 530 is configured by a CPU (Central Processing Unit), etc. The control unit 530 controls the overall operation of the specific user information media management server 500 by executing a program stored in the storage unit 520.
[0097] The following describes the functional configuration of the control unit 530. The control unit 530 functions as at least a content management unit 531, a data transmission / reception unit 532, a user management unit 533, and an entry / exit status acquisition management unit 534.
[0098] The content management unit 531 stores and updates information for identifying text, images, etc. corresponding to content posted by the administrator terminal 200 or a user terminal in the storage unit 520 via the communication unit 510. The content management unit 531 stores, for example, information on attributes that can be associated with content to be provided to a user (for example, a group to which a specific user belongs, or the specific user itself) in the storage unit 520. The content management unit 531 stores and updates, in the storage unit 520, information for identifying information such as the category and poster of content posted by the administrator terminal 200 or a user terminal, and attributes associated with each piece of content.
[0099] The data transmitter / receiver 532 receives various information transmitted from the user terminal via the communication unit 510 and transmits (distributes) various information to the user terminal. The data transmitter / receiver 532 performs distribution to the user terminal by referring to various management tables stored in the storage unit 520. Alternatively, the data transmitter / receiver 532 distributes data stored in another computer as a result of an API call via the communication unit 510 by the entry / exit status acquisition unit 534 or the like so that the data can be viewed on the user terminal. The various information transmitted and received by the data transmitter / receiver 532 includes, for example, information about content managed in the content management unit 531, various notification information, and information based on the user information 122 stored in the storage unit 120 of the distribution server 100. Transmission of various information includes, for example, push notifications (including desktop notifications), in-app notifications, or distribution of information about a specific user entering and exiting a virtual space provided by the distribution server 100 as information about a specific user in response to a request from the user terminal. Push notifications, etc. may be sent only if the user terminal has given prior permission (set to ON).
[0100] The entry / exit status acquisition management unit 534 acquires information about users who have entered the virtual space provided by the distribution server 100 via the communication unit 510, and causes information about the entry and exit of a specific user into the virtual space to be distributed to the user terminal by the data transmission / reception unit 532. The user information may be received from the distribution server 100 and stored in the storage unit 520 of the specific user information medium management server 500, or the result of calling an API for the user entry / exit status of the distribution server 100 may be acquired. Furthermore, based on the user information acquired by the entry / exit status acquisition management unit 534 and the user information (including information for determining the specific user) stored in the storage unit 520 of the specific user information medium management server 500, if a specific user has entered the virtual space, the data transmission / reception unit 532 can notify the user terminal of the information that the specific user has entered the virtual space.
[0101] <User terminal configuration> Next, the configuration of the user terminals (user terminal 300 and broadcaster user terminal 400) will be described in detail. As shown in Fig. 6, the user terminal comprises a communication unit 310 that communicates with other computers including the broadcast server 100, a memory unit 320 that stores various data, an input unit 330 for inputting operations, etc., an output unit 340 for outputting images, etc., and a control unit 350 that controls the entire computer. The communication unit 310, memory unit 320, input unit 330, output unit 340, and control unit 350 are connected to each other by a bus line.
[0102] The communication unit 310 is a communication interface equipped with a NIC for wired or wireless communication. The communication unit 310 communicates with other computers including the distribution server 100 and the specific user information media management server 500 via the network 2. The storage unit 320 is composed of RAM, ROM, etc. The storage unit 320 stores programs for executing various control processes (for example, a program for viewing content using a virtual space, a program for distributing content using a virtual space via the distribution server 100 in the distribution user terminal, etc.), various data, etc.
[0103] The input unit 330 includes an input device (e.g., a touch panel, touchpad, pointing device such as a mouse, keyboard, microphone, etc.) for receiving input operations and voice from the user. The broadcaster user terminal 400 is equipped with an input device such as an HMD with a motion capture function, and includes a motion input unit as the input unit 330 that acquires the user's movements as motion information. In this way, the broadcaster user terminal 400 used by the broadcaster user for content distribution has different hardware and functions from the user terminal 300 used for participation as a general user. In this embodiment, user operations refer to operations from the user on these input units 330. For example, these operations include touch operations, slide operations, flick operations on the touch panel, button operations, drag (swipe) operations, operations on icons displayed on the display unit of the user terminal 300, operations on a pointing device or keyboard, and voice input into a microphone.
[0104] The output unit 340 includes an output device (a display unit such as a display, a speaker, etc.) for presenting and outputting information (text, images, audio, etc.) to the user. The control unit 350 is composed of a CPU, etc. The control unit 350 controls the overall operation of the user terminal 300 by executing programs stored in the storage unit 320.
[0105] The following describes the functional configuration of the control unit 350. The control unit 350 functions as an information acquisition unit 351, a virtual camera control unit 352, a display control unit 353, an audio output control unit 354, and an input information transmission unit 355.
[0106] The information acquisition unit 351 acquires content data, comment information, etc. from the distribution server 100 via the communication unit 310, and stores information for displaying an image in a virtual space in which various objects are arranged based on the content data in the storage unit 320, as well as information for displaying comments posted based on the comment information in the storage unit 320. The information acquisition unit 351 also acquires content data, etc. from the specific user information medium management server 500, and stores information for displaying text and images related to the content (posted information, trend information, etc.) based on the content data in the storage unit 320.
[0107] Virtual camera control unit 352 is placed in the virtual space stored in storage unit 320 and controls a virtual camera for specifying an area (visible area) of the image in the virtual space to be displayed on user terminal 300. Virtual camera control unit 352 controls the position, direction, tilt, etc. of the virtual camera in response to an operation on input unit 330.
[0108] The display control unit 353 displays on the display unit (such as a display) an image corresponding to the field of view of the virtual camera, which is a part of the virtual space stored in the storage unit 320, based on the content data acquired by the information acquisition unit 351. That is, the user can change the position, orientation, tilt, etc. of the virtual camera placed in the virtual space in response to an operation on the input unit 330, thereby displaying on the user terminal 300 an image within the field of view of the virtual camera. Furthermore, the image data displayed by the display control unit 353 can be adjusted in resolution and the amount of object data displayed by the user's arbitrary settings on the input unit 330. Furthermore, the information acquisition unit 351 displays content information (e.g., headlines of articles about the content) related to the content stored in the storage unit 320 based on the content data acquired from the specific user information media management server 500 so that the user can identify it. For example, by displaying a headline such as a broadcast schedule of a specific user, such as a celebrity, on the user terminal 300, the user can recognize that the content is a broadcast schedule related to the celebrity.
[0109] In this embodiment, an example has been shown in which information for displaying an image in a virtual space based on content data is stored in memory unit 320, a virtual camera is placed in the virtual space stored in memory unit 320, and the field of view area displayed on user terminal 300 is varied by controlling the virtual camera, but this is not limited to this. For example, the user's virtual camera may be placed in a virtual space stored in memory unit 120 of distribution server 100, the virtual camera may be controlled by virtual camera control unit 352 to vary the field of view of the virtual camera, data for identifying an image in the field of view may be received, and the image may be displayed on user terminal 300.
[0110] Furthermore, the display control unit 353 causes a display unit (such as a display) to display the history of posted comments stored in the storage unit 320 based on the comment information acquired by the information acquisition unit 351. The audio output control unit 354 causes an audio output unit (such as a speaker) to output audio based on the content data acquired by the information acquisition unit 351.
[0111] Furthermore, display control unit 353 displays UI (User Interface) images (including, for example, menu images selectable by the user and operation images for accepting operations) in a format appropriate for the content being distributed based on the program stored in storage unit 320. In this embodiment, different UI images may be displayed on user terminal 300 used to participate as a general user and on distributor user terminal 400 used by the distributor user for content distribution. For example, a UI image for posting comments may be displayed on user terminal 300 (when a program for viewing / experience is being executed) but not on distributor user terminal 400 (when a program for content distribution is being executed) for communication primarily by voice. Furthermore, since the menu items required for viewing / experience are different from those required for content distribution, the UI images for selecting menus may be different on user terminal 300 (when a program for viewing / experience is being executed) and distributor user terminal 400 (when a program for content distribution is being executed).
[0112] The input information transmitting unit 355 transmits audio information, operation input information, and the like acquired by the input unit 330 to the distribution server 100. The operation input information includes various types of information, such as information on the user's entry and exit into the virtual space, and operation information for specifying operations on objects in the displayed virtual space and on the user character placed in the virtual space (including, for example, motion information acquired by the action input unit 260 (such as an HMD)). The information on the user's entry and exit into the virtual space includes the user's login information (a request to log in to the virtual space), logout information, and information on the area and room movement of each virtual space.
[0113] <Overview of the relationship between specific users and server processing> In this embodiment, the distribution server 100 performs an entry notification process to notify other users that a specific user has entered the virtual space in response to the specific user's entry into the virtual space. In addition, the distribution server 100 performs a setting change process to change the resource settings of the distribution server 100 (also referred to as a virtual space providing unit) and the setting of the amount of information for providing the virtual space that is distributed to the user terminal in response to the specific user's entry into the virtual space.
[0114] <Types of users in virtual space> (Example of a data table about users) With reference to FIG. 7, the following describes users to whom a virtual space is provided in this embodiment, and specific users who may influence the behavior of other users. FIG. 7(A) is an example of a data table related to users stored in user information 121 of distribution server 100. Each user is associated with a "user ID" (u1, u2, u3, etc.), a "user attribute number," an "evaluation index," and an "entry status." In this embodiment, distribution server 100 determines whether a user is a specific user based on the user's "user attribute number" or "evaluation index," and then performs processing to change the settings of distribution server 100 and to notify other users of the entry information.
[0115] The "entry status" is associated with the entry status of each user into the virtual space. For example, if the user is logged in to the virtual space, "entering the room" is associated, and if the user is logged out, "leaving the room" is associated. Furthermore, the entry status of the room (area, room ID, etc.) may also be associated.
[0116] FIG. 7B is a diagram illustrating an example of a "user attribute number." A "user attribute" is an identification ID used to classify users according to their attribute type. For example, a general user is assigned a user attribute number of "1." If a user is a celebrity, they can be further classified by the group to which they belong. A celebrity belonging to group A is assigned a user attribute number of "2," and a celebrity belonging to group B is assigned a user attribute number of "3." An administrator who manages and operates the virtual space is assigned a user attribute number of "4." Other celebrities, such as those considered to have influence in the virtual space, are assigned a user attribute number of "5." These attribute type items are managed, for example, by the administrator terminal 200, and can be added or changed as appropriate by the administrator operating the administrator terminal 200. Special privileges can be granted within the virtual space depending on the user's attribute type.
[0117] In this embodiment, the specific user is a user whose user attribute type is a celebrity or a famous person. A celebrity or famous person is assigned a user attribute number of "2," "3," or "5." Therefore, when a user associated with a user attribute number of "2," "3," or "5" enters a virtual space, the specific user is considered to have entered the virtual space.
[0118] For example, the user IDs "u1," "u5," and "u6" in FIG. 7(A) have an attribute number of "1" and an attribute type of general user, and therefore are not considered to be specific users. The user ID "u4" has an attribute number of "4" and an attribute type of administrator, and therefore is not considered to be a specific user. On the other hand, the user IDs "u2" and "u7" have an attribute number of "2" and an attribute type of talent in group A, and therefore are considered to be specific users. The user IDs "u3" and "u8" have an attribute number of "3" and an attribute type of talent in group B, and therefore are considered to be specific users. The user ID "u10" has an attribute number of "5" and an attribute type of celebrity, and therefore is considered to be a specific user.
[0119] FIG. 7(C) shows an example of a numerical value used to set the "evaluation index." The evaluation index is a value that fluctuates depending on external evaluations, i.e., evaluations from sources other than the user himself / herself. For example, the numerical value may be set in advance by the administrator, or may be a value corresponding to the number of followers on a social networking site or the like that is different from the virtual space. Alternatively, a mutual follow function may be provided in the virtual space (metaverse space) of this embodiment, and the value may be a value corresponding to the number of followers in the metaverse space. For example, if game content is provided in the virtual space, a follow function for the game content may be provided, and the number of game followers in the virtual space may be used. Note that the number of followers may be a value that serves as an indicator of popularity, such as the number of users registered as favorites. Users with a predetermined number of followers or more are treated as specific users (such as influencers) who have influence over other users. For example, different processing may be performed depending on the actual number of followers.
[0120] Alternatively, the "evaluation index" may be a value calculated using a predetermined formula based on a predetermined popularity index, such as the number of followers. For example, the evaluation index may be determined using a predetermined formula based on the number of followers, and a user who obtains a positive value using the formula may be considered a specific user. The predetermined formula may be, for example, "[number of followers - 1,000,000] ÷ specified value = evaluation index (may be rounded up to the nearest decimal point)," but is not limited to this.
[0121] The evaluation index in FIG. 7(A) is an example where the evaluation index is determined using a predetermined calculation formula for a value that indicates popularity. User IDs "u1," "u4," and "u5" have negative evaluation indices, so are not considered to be specific users. User IDs "u2," "u3," and the like have positive evaluation indices, so are considered to be specific users. Here, even if a user is not considered to be a specific user based on either the user attribute number or the evaluation index, if the user is considered to be a specific user based on either the user attribute number or the evaluation index, the distribution server 100 will treat the user as a specific user and perform processing. For example, user ID "u6" is a general user with a user attribute number of "1," but because of its high popularity in the game in the Metaverse, its evaluation index is positive, and the user will be treated as a specific user and processed.
[0122] (Relationship between evaluation index and server expansion) In this embodiment, the setting change processing of the distribution server 100 can be configured to execute different processing for each specific user. FIG. 8 shows an example of the number of servers to be added according to each evaluation index when scaling out, which increases the number of servers in response to a specific user entering the virtual space, is performed as the setting change processing of the distribution server 100. As shown in FIG. 8, there are multiple types of servers with different processing capabilities. Normal servers, high-spec servers with higher performance than normal servers, and top-spec servers with even higher performance than high-spec servers are provided. The number of these servers to be added is predetermined according to the evaluation index. For example, if user ID "u2" in FIG. 7(A) logs in, the evaluation index is 5, so one normal server and one high-spec server are added. If user ID "u7" logs in, the evaluation index is 20, so five high-spec servers and four top-spec servers are added. Note that when scaling up is performed as the setting change processing, the scale-up stage for increasing resource performance (CPU and memory specification values) may be different depending on the evaluation index for each user.
[0123] Furthermore, a resource amount (number of servers, or CPU and memory values) may be determined for each attribute number. In this case, a setting change process is performed according to the resource amount determined in advance for each attribute number. For example, if a user's attribute number is "2," five servers may be added, and if the attribute number is "5," three servers may be added. Even for the same attribute type, multiple attribute numbers may be assigned depending on the amount of resources to be changed. For example, even for the same type, "talent of group A" as illustrated in FIG. 7B, attribute numbers such as "2," "6," and "7" may be assigned depending on the number of servers to be added. If a talent of group A with attribute number "2" enters the room, three servers may be added; if a talent of group A with attribute number "6" enters the room, five servers may be added; and if a talent of group A with attribute number "7" enters the room, ten servers may be added.
[0124] <Example of display screen on user device> Examples of display screens of a user terminal in this embodiment will be described with reference to FIGS. 9 to 11. FIG. 9 shows an example of a screen displayed on a user terminal when entering a virtual space. FIG. 9(A) shows a login screen displayed after an application for displaying a virtual space provided by the distribution server 100 is launched. Examples of applications for displaying a virtual space include web applications that run on a web browser, desktop applications, and smartphone applications. Hereinafter, these may also be referred to as apps or various apps. When the START icon 21 in FIG. 9(A) is selected, login request information is transmitted from the user terminal to the distribution server 100. If the user who transmitted the login request information is a specific user, the distribution server 100 determines that the user who made the login request is a specific user based on the login request information, and performs processing to display the screen shown in FIG. 9(B).
[0125] 9(B) is a screen that allows a user to select whether or not to notify other users that they have logged in. For example, by selecting the "Yes" icon 22Y or the "No" icon 22N that are displayed together with the message "Would you like to be notified that you have logged in?", notification availability information is transmitted to the distribution server 100. For example, when the "Yes" icon 22Y is selected, the notification management unit 135 performs processing to notify other users that they have logged in based on the notification availability information. When the "No" icon 22N is selected, the notification management unit 135 prevents other users from being notified that they have logged in based on the notification availability information, even if they have logged in to the virtual space.
[0126] 9(C) is an example of a title screen displayed after login authentication processing to the virtual space has been performed. An area list corresponding to each piece of content that can be provided by the content management unit 131 is displayed on the screen of the user terminal of a user who has undergone login authentication processing to the virtual space by the entry / exit processing unit 134. The title screen displays an area bar 23, a room icon display area 24, a room list display icon 25, an update icon 26, a room ID input area 27, etc.
[0127] The area bar 23 is displayed to indicate areas (contents) that can currently be provided to the user by the content management unit 131. In Fig. 9(C), the area bars 23a to 23c indicate that areas X to Z are respectively available.
[0128] The room icon display area 24 is an area that displays icons that indicate rooms for entering the various available areas displayed by the area bar 23. By the user selecting a room icon displayed in the various room icon display area 24, the user can enter a room, and various areas are provided within the room. In FIG. 9(C), a room icon display area 24a for a room in which area X is provided, a room icon display area 24b for a room in which area Y is provided, and a room icon display area 24c for a room in which area Z is provided are displayed. In this way, the user can enter each room by selecting the room icon of any room.
[0129] Furthermore, each room icon displayed in the room icon display area 24 may display a room ID and may be displayed in a manner that allows users to recognize the status, such as "comfortable," "crowded," or "full," depending on the level of user congestion (e.g., the number of users currently in the room). The entry status (whether or not a specific user, a following user, or a friend user) of a specific user, a following user, or a friend user may also be displayed. For example, the user may be able to recognize the level of congestion by using text information, a face icon (a smiling face indicates comfortable, a sad face indicates crowded, etc.), a change in color, or the like. The entry status of a specific user, a following user, a friend user, etc. may be displayed in a manner that allows users to identify who is in the room. Alternatively or additionally, an icon indicating that a friend or the like is in the room may be displayed without being displayed until the user can be identified.
[0130] In Fig. 9(C), the room icon display area 24a displaying the rooms in area X displays a room with room ID 001, a room with room ID 002, and a room with room ID 003. The congestion status of room ID 001 is "comfortable," while the congestion status of room ID 002 is "crowded." "Comfortable" means that there is still room to accommodate up to the maximum number of people in the room, "crowded" means that there is not much room left before the maximum number of people in the room is reached (for example, the maximum number of people is reached with 10 people remaining), and "full" means that the maximum number of people has been reached and no new users can enter the room.
[0131] By selecting a room icon, a confirmation pop-up screen may be displayed before entering the room, with a message such as "Do you want to enter?", allowing the user to select whether to enter or cancel. For example, only the room ID may be displayed in the room icon display area 24, and other information such as congestion information may be displayed on the pop-up screen.
[0132] The room list display icon 25 is an icon for displaying all icons displaying rooms for entering various available areas displayed by the area bar 23, when selected. Even if there are rooms not displayed in the room icon display area 24, all of them can be displayed. For example, although there are six rooms provided in area X, if the number of rooms displayed on one screen is reduced due to the layout of the display screen (to reduce the number of rooms displayed and increase the area displayed on one screen), or if rooms that are full and cannot be entered or crowded rooms are given a lower display priority, and rooms with a comfortable crowded situation are given priority and displayed in the room icon display area 24, all of the rooms can still be displayed. In FIG. 9(C), room list display icons 25a to 25c are displayed corresponding to the area bars 23a to 23c.
[0133] The update icon 26 is an icon that, when selected, sends a request to the distribution server 100 to reacquire the list data of available areas and rooms, thereby updating (reloading) the title screen. As a result, the rooms displayed in the room icon display area 24, for example, are updated.
[0134] The room ID input area 27 is a search area that displays rooms by directly inputting and specifying a room ID. For example, if a user knows the ID of a room that a friend user is in, the user can directly input the room ID into the room ID input area 27 to directly specify the room and attempt to enter it. For example, inputting the room ID may cause a confirmation pop-up screen to be displayed before entering the room, which is displayed when the room icon is selected.
[0135] FIG. 10 is an example of a display screen of a user terminal, and is an example of a display screen for a push notification by an app downloaded to the user terminal or a specific page within the app. Note that while an example screen of a smartphone is shown, the screen may be that of another computer device. The app downloaded to the user terminal is an app that enables the virtual space provided by the distribution server 100 to be provided on the user terminal (opening the app allows entry into the virtual space), or an app managed by the specific user information media management server 500. Below, an example will be described in which talent BBB is the talent corresponding to user ID "u2" in FIG. 7(A).
[0136] FIG. 10(A) is an example of a screen displayed on a user terminal when a push notification is sent to notify the user that a specific user has entered a room. The push notification screen 30 displays a message such as "BBB has logged in to the Metaverse!", notifying the user that the celebrity BBB has logged in to the virtual space. The push notification screen may also notify the user of the area or room ID the specific user has entered (for example, "BBB has entered room ID 0001!"). The user may also be able to turn push notifications on or off. Therefore, if the user has turned push notifications off (has not given permission), the push notification screen will not be displayed on the user terminal.
[0137] FIG. 10(B) is an example of a display screen of a fan community app for a talent provided to a user by the specific user information media management server 500, in which talent BBB is included in the talents to be supported. FIG. 10(B) shows a page on which information about a specific user can be viewed. For example, this is a page on which the schedule of the talent can be viewed, including the talent's past (e.g., most recent), current, and future video distributions and trends. The page on which the schedule of the talent can be viewed displays a period selection area 41, a group selection area 42, a date and time display 43, content headings 40, accounts 48, related talents 44, and a favorite filter 45. A schedule icon 18, a notification icon 15, and the like are also displayed at the bottom of the screen. In this community app, a talent schedule screen may be displayed by selecting the schedule icon 18. Furthermore, a list of notifications sent by push notification in FIG. 10(A) may be displayed by selecting the notification icon 15.
[0138] The favorite filter 45 is an icon that, when a user has previously selected and stored a favorite talent in a fan community (for example, in the memory unit 520 or the memory unit 320), can be selected to extract and display only the information of the favorite talent (favorite) that has been previously selected and stored.
[0139] The period selection area 41 displays time period icons such as "Past," "Present," and "Future Schedule." By selecting the "Past" icon, for example, the celebrity's most recent video distribution history and the celebrity's entry history into the virtual space (logged out history) are displayed. When the "Current" icon is selected, information such as the video currently being distributed and the current status of entry into the virtual space is displayed. When "Future Schedule" is selected, future distributions and scheduled entry into the virtual space are displayed. Note that a schedule of events (such as live performances) within the virtual space related to a specific user may also be displayed, and the area and room ID to which the specific user has entered may also be displayed. For example, when the "Current" icon is selected, information about a live event currently being held in the virtual space in which the celebrity is appearing is displayed.
[0140] The group selection area 42 displays icons that, for example, when a talent can be classified by the group they belong to, upon a selection operation, display information for each group they belong to. The content heading 40 divides the display area for each content (such as distribution or information for entering a virtual space). In the account 48 displayed within the content heading 40, icons such as a video distribution channel account or a user account in a virtual space are displayed. The related talent 44 displayed within the content heading 40 associates and displays the talents related to the content displayed within each content heading 40 with the content heading 40. For example, icons of talents who appear in the distributed video (such as a collaboration partner) or icons of talents who entered the virtual space are displayed. Thus, since related talents are associated with each content, by selecting the push filter 45, it is possible to extract and display only the content in which the pre-selected talent is associated as a related talent. Note that related talents are automatically associated, for example, at the time of content posting, at the time of creating the content heading 40, based on the operations of the poster, or based on information obtained through an API.
[0141] Also, in the push notification illustrated in FIG. 10(A), only the entry information of the favorite talents pre-selected and memorized by the user may be push-notified. Note that the information for identifying the specific user (talent) pre-selected and memorized by the user is stored in the storage unit 520 etc. of the specific user information medium management server 500. The specific user information medium management server 500 distributes, for each user, the information for identifying the user pre-selected by the user (information for identifying whether the user has selected or not) together with information including information of other specific users. In the user terminal, by receiving the information distributed from the specific user information medium management server 500 and performing a process of extracting the pre-selected specific user, it becomes possible to display information regarding the pre-selected user (such as information of favorite talents extracted when the push filter 45 is on).
[0142] In FIG. 10(B), the "Current" icon is selected in the period selection area 41, group A is selected in the group selection area 42, and the favorite filter 45 is turned on. Therefore, information about the current group A, which is associated with a talent previously selected and stored by the user as a related talent, is extracted and displayed. For example, FIG. 10(B) shows an example screen of a user who previously selected and stored talent BBB as a favorite talent. Therefore, content heading 40a, which displays the content of a streaming video associated with talent BBB, and content heading 40b, which is information about talent BBB's entry into the virtual space, are displayed. Selecting an image portion of each content heading 40 may transition to another screen. For example, selecting the image of content heading 40a may transition to a streaming video (such as a video stream on an external web service), and selecting the image of content heading 40b may transition to the virtual space. For example, a virtual space app may be launched, a login screen may appear, or a transition to a room in which the talent is present may be made. When a talent logs out, information indicating the logout may be displayed together with the past distribution history in the history information displayed by a past icon that allows past information to be viewed, rather than in the current tab. Alternatively, the display itself may be deleted from the list. In other words, the content heading 40 itself may be deleted.
[0143] FIG. 11 is an example of an image of a virtual space provided by distribution server 100 and displayed on a user terminal. For example, this is an example of a screen displayed when a desktop app, a smartphone app, a web browser, or the like is launched. FIG. 11 is a display image of a room corresponding to spatial area ER1 where an entrance space (entrance content) is provided. A bulletin board object O is displayed at the entrance, allowing users to view information within the virtual space (metaverse). Based on information stored in storage unit 120, bulletin board object O displays information about a specific user, event information, various other news, breaking news, and the like. Examples of information about a specific user include the name of a specific user who entered (e.g., logged in) the virtual space, the time, and information about the area they entered.
[0144] Bulletin board object O in FIG. 11 displays breaking news and current event information. The breaking news displays a message at 10:00 that reads, "BBB has logged into the Metaverse!" and a message at 10:01 that reads, "BBB has entered Area Y!" This displays information that a specific user, a celebrity named BBB, has logged into the virtual space and which area of the virtual space she has entered. Other examples of information about special user actions in the virtual space include the breaking news display at 8:15 that reads, "P has climbed onto the platform in Area Y!" and current event information that reads, "A mini live show is currently taking place in Area Z!"
[0145] A user who has entered a room is displayed as a user avatar U, and can move within the virtual space or change the viewpoint by operating the user avatar U. The image of the virtual space may be an overhead image of the user avatar U as shown in FIG. 11, or may be an image seen from the viewpoint of the user avatar U operated by the user himself / herself, without displaying the user avatar U. In addition, the bulletin board object O may be configured to pop up a large image on the screen of the user terminal or to be displayed on the entire screen by bringing the user avatar U close and selecting the bulletin board object O.
[0146] As a result, when a user wants to obtain information about a specific user, the user can view the information about the specific user by, for example, moving to a location in the virtual space where a bulletin board or the like is located and obtaining display information for the bulletin board from the distribution server 100. In other words, information about the specific user can be obtained in response to the user's request. Note that even on a page that displays information (such as a schedule) about a talent to be supported by a fan community app such as that shown in FIG. 10(B), information about the entry of a user who is not a talent and the actions that the user takes in the virtual space may be displayed for users who meet certain conditions (such as celebrities in FIG. 7(B)).
[0147] Furthermore, information about a specific user is not limited to being displayed as an image in a virtual space, but may also be notified (notified) within the app, as in the in-app notification bar 50 in Fig. 11. The in-app notification bar 50 displays a message saying "BBB has logged in to the Metaverse!" The in-app notification bar 50 and the information about BBB's login in the bulletin board object O can be displayed by the entry / exit processing unit 134 performing login authentication processing for BBB (e.g., a specific user of user "u2"), and the notification management unit 135 performing distribution processing.
[0148] <Regarding entry notification processing> 12 to 15, a notification process for notifying other users that a specific user has logged in to a virtual space provided to the user by the distribution server 100 will be described below. In this embodiment, the manner in which information about a specific user (e.g., a celebrity) is notified includes receiving a push notification about the information about the specific user, or receiving and displaying response information delivered (transmitted) to the user terminal based on a viewing request from the user terminal (a request signal transmitted from the user terminal) from a server that enables the user to view information about the specific user in response to a viewing request from the user terminal (transmission of a request signal). Examples of servers that enable the user to view information about the specific user include a server that manages a smartphone app related to the specific user, a server that manages a website that displays information about the specific user (specific user information medium management server 500), or the distribution server 100 that provides the virtual space into which the specific user has logged in. The specific user information media management server 500 (such as a server that manages a smartphone app or a server that manages a website) obtains information on whether a specific user is logged in to the virtual space using an entry status API that enables the user's entry status (for example, the user information data table in Figure 7(A)) stored in the memory unit 120 of the distribution server 100 to be obtained via the communication unit 110.
[0149] (Entry notification process 1) Entry notification process 1 is a process for notifying other users of information that a specific user has entered a virtual space (for example, by push notification or by displaying the information on the user's terminal in response to a viewing request from the user) in response to the specific user's entry (logging in) into the virtual space. Entry notification process 1 will be described below with reference to the flowchart in FIG. 12. Entry notification process 1 is repeatedly executed at predetermined time intervals by control unit 130 in distribution server 100 when a user logs in to the virtual space. Distribution server 100 performs various processes including entry notification process 1 based on a program stored in storage unit 120. An example will be described in which the determination of whether or not a specific user is a specific user is performed based on the user attribute number in FIG. 7(A).
[0150] First, in step S101, it is determined whether a user has logged in to the virtual space. If it is not determined that a user has logged in, the process proceeds to step S107. On the other hand, if it is determined that a user has logged in, the process proceeds to step S102, where it is determined whether the logged-in user is a specific user. For example, the entry / exit processing unit 134 (e.g., the login authentication device 101, which will be described later with reference to FIG. 16) determines whether the logged-in user is a specific user when performing login authentication processing based on a user's login request. The user's login request is transmitted to the distribution server 100, for example, by selecting the START icon 21 in FIG. 9(A). For example, if the logged-in user has user ID "u1" in FIG. 7(A), the user is a general user with a user attribute number of 1, and therefore is not determined to be a specific user. On the other hand, if the logged-in user has user ID "u2," the user is a talent in group A with a user attribute number of 2, and therefore is determined to be a specific user. If it is not determined to be a specific user in step S102, the process proceeds to step S107.
[0151] On the other hand, if it is determined in step S102 that the user is a specific user, the process proceeds to step S103. In step S103, display information for displaying a selection screen for informing other users of the login status is distributed (transmitted) to the user terminal of the specific user who logged in. At this time, the distribution server 100 performs processing for displaying the post-login title screen illustrated in FIG. 9(C) on the user terminal of the logged-in user. For example, if the logged-in user has a user ID "u2" who is a specific user, the control unit 130 transmits display information for displaying the selection screen of FIG. 9(B) on the user terminal of "u2" to the user terminal of the specific user who logged in. This allows the specific user "u2" to select whether to notify other users of the login status by selecting either the "Yes" icon 22Y or the "No" icon 22N in FIG. 9(B). When either the "Yes" icon 22Y or the "No" icon 22N is selected, notification availability information is transmitted to the distribution server 100.
[0152] In step S104, it is determined whether the specific user determined to have logged in in steps S101 and S102 has permitted the specific user to be notified of the fact that they have logged in, based on the notification permission information transmitted from the user terminal of the specific user. If it is determined that permission has not been granted, the process proceeds to step S107. For example, if the specific user logs in by selecting the "No" icon 22N on the screen illustrated in FIG. 9(B), the notification management unit 135 (for example, the notification device 104 described below with reference to FIG. 16) restricts the process of notifying the specific user that they have logged in, based on the received notification permission information.
[0153] On the other hand, if it is determined in step S104 that permission has been granted, the process proceeds to step S105, where notification information is distributed to the user terminal to notify the user that the specific user has logged in. The notification information is distributed from the distribution server 100 to the user terminal and the specific user information media management server 500. For example, when the "Yes" icon 22Y is selected and logged in on the screen of FIG. 9(B), it is determined that permission has been granted to be notified to other users based on the notification permission information received by the notification management unit 135. When the notification information is distributed from the distribution server 100, the user terminal performs, for example, a push notification as exemplified in FIG. 10(A) or an in-app notification as exemplified by in-app notification 50 in FIG. 11 based on the information received from the distribution server 100.
[0154] Note that the administrator terminal 200 may also be notified, and even if a specific user has not permitted other users to be notified, the administrator terminal 200 may be notified. For example, even if the "No" icon 22N is selected on the screen of Fig. 9(B), the other user terminals may not be notified, but the administrator terminal 200 operated by the administrator may be notified.
[0155] In step S106, a process is performed to update the user entry status information so that information indicating that the specific user, who was determined to have been allowed to be notified in step S104, has logged in can be viewed as information about the specific user in response to a request (viewing request) from the user. For example, the user entry status is updated by the notification management unit 135 and stored in the storage unit 120 (which may be user information 121). As a result, another server (e.g., specific user information media management server 500) that acquires the user entry status through the user entry / exit status API can acquire information about the login of the specific user in steps S101 to S104, and the app of FIG. 10(B) or a web browser that displays information about the specific user will display information about the specific user, including the specific user in steps S101 to S104. Furthermore, by updating the entry status, information about the specific user can be displayed in the virtual space, and a message indicating that the specific user has logged in can be displayed in the bulletin board object O illustrated in FIG. 11. After receiving the notification availability information, the distribution server 100 performs processing to display the post-login title screen shown in FIG. 9(C) on the user terminal of the logged-in user.
[0156] In step S107, it is determined whether or not there has been a request to view information about the specific user (a request from the user). If there has been no request to view, the process ends. If it is determined in step S107 that there has been a request to view, the process proceeds to step S108, where information about the specific user, including information indicating that the specific user has logged in, is delivered to the user terminal, and the process ends. For example, when there has been a request from the user terminal as a view request to display a bulletin board object O in the virtual space exemplified in FIG. 11 (for example, a request to acquire information for displaying the space in which the bulletin board object O is placed, or a request to acquire information about the bulletin board object O by selecting the bulletin board object O), the fact that the specific user has logged in is displayed on the user screen of the user terminal. For example, the most recent predetermined period (for example, the past three hours) may be displayed.
[0157] (Entry notification process 2) The entry notification process 2 is a process executed in the specific user information medium management server 500, and is a process for notifying a user terminal of information that a specific user has entered a virtual space based on information received from the distribution server 100 in the entry notification process 1 described in FIG. 12 (for example, by push notification or by displaying the entry information on the user terminal in response to a viewing request from the user). The entry notification process 2 will be described below with reference to the flowchart in FIG. 13. The entry notification process 2 is repeatedly executed at predetermined time intervals by the control unit 530 of the specific user information medium management server 500. The specific user information medium management server 500 performs various processes including the entry notification process 2 based on programs stored in the storage unit 520.
[0158] First, in step S201, it is determined whether or not notification information for notifying the user terminal that a specific user has logged in has been received. If it is determined that the notification information has not been received, the process proceeds to step S203. On the other hand, if it is determined in step S201 that the notification information has been received, in step S202, a process is performed to notify (announce) to the user terminal that the specific user has logged in, based on the received notification information. For example, when celebrity BBB logs in, notification information is transmitted from the distribution server 100 in step S105 of FIG. 12, and when the notification information is received by the specific user information media management server 500, a push notification is sent to the user terminal that celebrity BBB, as exemplified in FIG. 10(A), has logged in to the virtual space.
[0159] In step S203, a user entry status is acquired from the distribution server 100. For example, a user entry status API of the distribution server 100 is used to acquire a list of user entry statuses stored in the storage unit 120 updated in step S106 of Fig. 12. The acquired information on the user entry status may be stored in the storage unit 520 of the specific user information media management server 500.
[0160] In step S204, it is determined whether or not a request for viewing information about a specific user has been made from the user terminal (a request from the user). If it is determined that a request for viewing information about a specific user has not been made, the process is terminated. On the other hand, if it is determined that a request for viewing information about a specific user has been made, in step S205, information about the specific user, including the login information of the specific user acquired in step S203, is delivered to the user terminal, and the process is terminated. For example, when a request for displaying a screen displaying a schedule for a specific user in FIG. 10(B) is made as a viewing request, content heading 40a, which is video distribution information for the specific user, and content heading 40b, which is login information for the specific user to the virtual space, are displayed on the user screen.
[0161] (Entry notification process 3) Entry notification process 3 is a process for distributing notification information to user terminals of users who are not in the virtual space to notify (notify) that a specific user has entered (logged in) the virtual space. The user terminals to which the notification information is distributed differ from entry notification process 1 described with reference to FIG. 12. Entry notification process 1 notifies users regardless of whether they are in the virtual space or not (user terminals of users whose entry status in FIG. 7(A) is "in the room" are also included as notification recipients), whereas entry notification process 3 notifies users who are not in the virtual space. Entry notification process 3 will be described below with reference to the flowchart in FIG. 14. Entry notification process 3 differs from entry notification process 1 in steps S105A and S105B enclosed by dotted lines. Hereinafter, a description of processes that overlap with entry notification process 1 will be omitted. Entry notification process 3 is repeatedly executed at predetermined time intervals by control unit 130 of distribution server 100. The distribution server 100 performs various processes including the entry notification process 3 based on the programs stored in the storage unit 120 .
[0162] If it is determined in step S104 that the specific user has permitted other users to be notified that they have logged in, the process proceeds to step S105A, where users who are not in the virtual space are extracted. In step S105B, notification information that notifies the user terminal that the specific user has logged in is distributed to the user terminals of users who are not in the virtual space. For example, the notification management unit 135 references the user information 122 and extracts users who are not currently in the virtual space and are logged out. In step S105B, notification information is distributed (such as a push notification) to the user terminals of the users extracted in step S105A. For example, the notification information is distributed to user IDs "u3," "u5," "u7," etc., whose entry status in FIG. 7(A) is "left the room." Note that push notifications may be sent only to the terminals of general users, for example.
[0163] As a result, in step S105 in Fig. 12, a notification is sent regardless of whether the user to be notified has entered the virtual space or not, but in entry notification process 3 in Fig. 14, it is possible to extract and send notifications to users who have not entered the virtual space and are likely to be unaware that a specific user has entered the virtual space. Also, it is possible to avoid bothering to notify users who have already entered the virtual space and know that a specific user has entered the virtual space.
[0164] (Entry notification process 4) Entry notification process 4 is a process for distributing notification information to notify (notify) the user terminals of users, excluding users who have entered the virtual space under a predetermined situation, that a specific user has entered (logged in). The notification information is distributed to different user terminals than entry notification process 1 described with reference to FIG. 12. Users are notified regardless of their status in the virtual space (for example, whether they are participating in an event or have entered the virtual space with the intention of participating in an event). In contrast, entry notification process 4 notifies users (including users who have not entered the virtual space) except for users who have entered the virtual space under a predetermined situation. The entry notification process 4 will be described below with reference to the flowchart in FIG. 15. It differs from entry notification process 1 in steps S105C and S105D, enclosed by dotted lines. Hereinafter, a description of processes overlapping with entry notification process 1 will be omitted. Entry notification process 4 is repeatedly executed at predetermined time intervals by the control unit 130 of the distribution server 100. The distribution server 100 performs various processes including the entry notification process 4 based on the programs stored in the storage unit 120 .
[0165] If it is determined in step S104 that the specific user has permitted other users to be notified that they have logged in, the process proceeds to step S105C, where users are extracted excluding users who have entered the virtual space under a predetermined situation. In step S105D, notification information that notifies the user terminal of the user's login in step S104 is distributed to the user terminals of users excluding users who have entered the virtual space under a predetermined situation.
[0166] The predetermined situation refers to, for example, a situation in which the user is participating in predetermined content in a virtual space, including when the user is participating in a live event held in the virtual space, when the user is participating in a fan meeting, when the user is participating in a game, or when the user is participating in highly immersive content. For example, the notification may not be sent in a game that requires immediate operation, such as a battle game, but may be sent in a game that does not require immediate operation, such as a building game. In this way, the notification may not be sent in situations where the user may be disadvantaged by being distracted by the notification or where the user's sense of immersion may be diminished.
[0167] Other examples of the predetermined situation include a predetermined period before an event that the user is planning to attend, or a predetermined period before an event that is scheduled to be held in the virtual space (for example, one hour before the event starts). This is because when a predetermined event is held, the information about a specific user entering the virtual space may already be known.
[0168] As described above, information about a specific user's entry into a virtual space can be notified to a user terminal. This allows users to feel closer to the specific user more quickly, which can enrich fan activities, enable users to enjoy various content (activities) with the specific user through the virtual space, and anticipate the possibility of an event being held due to the specific user's entry into the virtual space (for example, a surprise live performance by a celebrity), thereby enhancing the enjoyment of the user experience through the virtual space.
[0169] <About setting change processing> 16 to 19, a process for changing the setting of the distribution server 100 to a continuous provision state, which can change depending on user behavior including entry into a virtual space, will be described. In this embodiment, the control unit 130 of the distribution server 100 can perform a process for changing the setting of the distribution server 100 to a continuous provision state in which the distribution server 100 can continuously provide the virtual space to users, either manually by an administrator via the administrator terminal 200 or when a preset condition is met. A state where continuous provision is not possible (a state where the distribution server 100 is not in a continuous provision state) is a state where, when the distribution server 100 provides the virtual space to users, waiting times or failures occur due to the processing capabilities (number of active servers, specifications, etc.) of the distribution server 100, making it difficult to smoothly and continuously provide the virtual space or where the provision may be temporarily interrupted. In contrast, the continuous provision state is a state where such a risk is low or absent.
[0170] The following are examples of user behaviors that are expected to make it difficult or temporarily interrupt the smooth and continuous provision of the virtual space to the user by the distribution server 100 (maintaining a continuous provision state). (1) A situation in which the load on the distribution server 100 increases due to a large number of users requesting to log in (enter) the virtual space in a short period of time (concentrated) (such as a situation in which the CPU usage rate of the distribution server 100 remains high for a specified period of time). (2) A situation where a number of users requests to enter a room exceeding the predetermined upper limit of the number of people who can be associated (enter) a room (for example, the upper limit of the number of users who can be associated with one server), resulting in a waiting time to start a new room. (3) A situation in which the load on the distribution server 100 increases due to an increase in the number of actions of users already in the virtual space. Note that a motion action is an action that is considered to increase the amount of communication between the user terminal and the distribution server 100, such as, for example, a user's movement in the virtual space, the use of an item, or chatting. For example, the amount and frequency of information to be synchronized with other user terminals, such as synchronization of user avatar location information or synchronization of performance information due to the use of an item, increases, which increases the processing load on the distribution server 100.
[0171] In conventional systems, when a user's behavior that is expected to make it difficult to maintain the continuous provision state increases the load on the distribution server 100 or exceeds the allowable number of users, the system performs setting change processing to maintain the continuous provision state on the distribution server 100, such as increasing the server resources of the distribution server 100 (server augmentation processing) or reducing the information delivered to user terminals. However, if processing is performed after the load increases, the processing on the distribution server 100 takes longer by the amount of the increased load, causing users to wait longer than when the load is not increased. In other words, when the load on the distribution server 100 increases, the processing on the distribution server 100 becomes slower than usual, and it takes longer to process users into the virtual space and to deliver data to user terminals. In particular, in this embodiment, when a specific user enters the virtual space, it can affect the behavior of other users, increasing the load on the distribution server 100. Furthermore, if other users are notified that a specific user has entered the virtual space, this may have a greater impact on the behavior of those other users, which may result in longer processing wait times and increased susceptibility to server failures. Therefore, in this embodiment, the entry of a specific user into the virtual space is used as a trigger to perform processing to reduce the load on the distribution server 100 in advance. This makes it possible to maintain the continuous provision state even if there is user behavior that is expected to make it difficult to maintain the continuous provision state.
[0172] The process of increasing the resources of the distribution server 100 (increasing the processing capacity of the server) in this embodiment includes the following aspects. (1) Processing to increase the number of servers to provide the virtual space (scale-out). (2) Processing (scaling up) to increase the performance of the server that provides the virtual space.
[0173] Furthermore, in this embodiment, the process of reducing (alleviating) the amount of information delivered from the delivery server 100 to the user terminal includes the following aspects. (1) The overall amount of information is reduced by reducing the number of synchronizations between the distribution server 100 and the user terminal. (2) The amount of information itself delivered from the delivery server 100 to the user terminal is reduced. These processes may be realized by sending a signal from the distribution server 100 to the user terminal to reduce the number of synchronization requests from the user terminal or the amount of information requested from the user terminal. Alternatively, the distribution user 100 may suppress the number of synchronizations to the user terminal or the amount of information to be transmitted. For example, the distribution server 100 may periodically distribute a signal regarding server congestion information to the user, and transmit a signal regarding server congestion information generated when the server load increases to the user terminal. In this way, the user terminal that receives the congestion information signal performs processing to reduce the number of synchronization request transmissions or the amount of information requested from the user terminal. The requested amount of information may be, for example, drawing information, including the display amount of objects (including user avatars) in the virtual space and image resolution. This reduces the processing load on the distribution server 100 due to frequent data input / output and heavy data readout in order to read information to be distributed to the user terminal.
[0174] (Example of system configuration and process) FIG. 16 shows an example of the system configuration and processing process of distribution server 100. As an example of the configuration, distribution server 100 is composed of login authentication device 101, lobby management device 102, real-time synchronization device 103, notification management device 104, and server management device 105. Each of the devices may be composed of one or more servers (communication infrastructure). For example, login authentication device 101 may be an API server for performing login authentication, and lobby management device 102 may be a lobby API server for providing information on areas and rooms in the virtual space to user terminals. For example, login authentication device 101 is composed of multiple servers such as server 101a, server 101b, etc., and lobby management device 102 is composed of multiple servers such as server 102a, server 102b, etc.
[0175] The login authentication device 101 is a computer having a function for performing processing for user login authentication, which is executed by the entry / exit processing unit 134 and the like. The login authentication device 101 receives login information from a user terminal, determines whether login is permitted, and transitions the user to a logged-in state when authentication is complete. For example, authentication is performed by referring to the user information included in the login information and the user data table stored in the user information 121.
[0176] When the user who has performed login authentication processing in login authentication device 101 is a specific user, login authentication device 101 transmits predetermined information to notification device 104 and server management device 105. Information specifying that a specific user has logged in is transmitted to notification device 104. A processing request to increase server resources is transmitted to server management device 105.
[0177] The notification management device 104 is a computer that performs processing executed by the notification management unit 135 or the like to notify (notify) a user terminal or the like that a specific user has logged in. For example, when the notification management device 104 receives information from the login authentication device 101 that a specific user has logged in (which may include entry notification information), the notification management device 104 performs processing to transmit a push notification to the user terminal or the administrator terminal 200. The information that a specific user has logged in may include entry notification information transmitted from the user terminal of the specific user. Alternatively, the notification management device 104 may be an entry status API server that acquires the entry status of a user into a virtual space in response to a request from another server. Note that the login authentication device 101 may perform processing to notify (notify) the administrator terminal 200 itself or the user terminal itself of the information that a specific user has logged in.
[0178] Server management device 105 is a computer that performs processing for varying server resource settings, which is executed by scale management unit 136 and the like. Login authentication device 101 and lobby management device 102 are examples of servers for which server management device 105 increases resources. When server management device 105 increases the number of servers as a process for increasing resources, as illustrated in FIG. 17 , servers 101c and 101d are added as servers for login authentication device 101, and servers 102c and 102d are added as servers for lobby management device 102.
[0179] Increasing the number of servers in login authentication device 101 enables login authentication device 101 to withstand the load caused by login requests (accesses) from a large number of users in a short period of time, thereby reducing the risk of users having to wait and enabling a state in which the virtual space can be continuously provided to users. Also, increasing the number of servers in lobby management device 102 enables lobby management device 102 to withstand the load caused by requests for virtual space information such as area and room information from a large number of users in a short period of time, thereby reducing the risk of users having to wait and enabling a state in which the virtual space can be continuously provided to users.
[0180] The lobby management device 102 is a computer executed by the content management unit 131 and having a function for providing a user with information about areas of the virtual space and a list of rooms related to the areas that can be entered. The user terminal of a user who has been logged in by the login authentication device 101 requests information about areas and rooms from the lobby management device 102, and based on the information acquired in response to the request, displays on the display unit of the user terminal a screen that displays information about areas of the virtual space that can be entered and various rooms, as shown in Fig. 9(C) for example.
[0181] The real-time synchronization device 103 is a computer that performs real-time synchronous communication within a room or between rooms, and is executed by the content management unit 131 and the scale management unit 136. It is also possible to set an upper limit on the number of users that can be associated with each room (that can enter the room) (for example, an upper limit of 200 users). The real-time synchronization device 103 is composed of, for example, a room management device 1031, a room server 103a, a room server 103b, etc. The room management device 1031 controls communication related to rooms. As communication control, it allocates rooms in response to communication requests from user terminals. For example, in response to a request for entry to one of the rooms from the user terminal based on information acquired by the lobby management device 105, connection information for the room is acquired from the room management device 1031, and entry to the room becomes possible.
[0182] Furthermore, the room management device 1031 can vary the resources of the room server depending on the load on the room server or the number of users entering the room. For example, this can be done by scaling out or scaling up the room server. When a user who has entered a room is a specific user, the room management device 1031 may be configured to increase the number of rooms that provide content corresponding to the room the specific user has entered (e.g., a specific area, specific content within the area, etc.). For example, in multiple rooms corresponding to each area, only the user avatars of users who have entered the same room are generally displayed. However, the user avatar of a specific user can be mirrored and reflected in rooms of the same type that provide the same content, even if the specific user is not in the same room. This makes it possible to provide users of other rooms with the experience of being in the same room as the specific user. Therefore, since it is expected that the number of users who wish to enter the same type of room that provides the same content will increase, processing is performed to increase the number of rooms in advance.
[0183] In this embodiment, the room management device 1031 may be configured to vary the amount of information in the virtual space provided to the user by the room server. For example, the amount of drawing information in a room where content corresponding to a room entered by a specific user is provided may be reduced. Note that the server management device 105 may perform processing to reduce the amount of drawing information in the room.
[0184] Note that the room management device 1031 may change the resources of the room server or the amount of information provided to the user when the login authentication device 101 authenticates the login of a specific user. For example, when the login authentication of a specific user is performed, multiple rooms may be started and put on standby, and after the specific user enters a room, the room server on standby may provide content corresponding to the content the specific user has entered. Also, the amount of information may be reduced only for the room the specific user has entered. Note that, without being limited to this, changes to the resources of the room server may be made regardless of the area (content) the specific user enters.
[0185] (Virtual space provision server expansion processing) FIG. 18 is a flowchart illustrating a virtual space providing server augmentation process for varying server resources, which is part of the setting variation process of the distribution server 100 executed by the distribution server 100. The virtual space providing server augmentation process is repeatedly executed at predetermined time intervals by the control unit 130 of the distribution server 100. The distribution server 100 performs various processes, including the virtual space providing server augmentation process, based on programs stored in the storage unit 120. Note that an example will be described in which the determination of whether or not a user is a specific user is made based on the evaluation index of FIG. 7(A). In the virtual space providing server augmentation process, a time when the server load becomes heavy or just before (before) the server load becomes heavy is referred to as a predetermined situation.
[0186] First, in step S301, it is determined whether a predetermined situation has occurred. If it is determined in step S301 that a predetermined situation has occurred, the process proceeds to step S302, where server resources are increased according to the predetermined situation, the server is placed in a continuous provision state, and the process ends. For example, if a predetermined situation occurs in which the server load becomes heavy due to factors including user behavior (e.g., entering a room by logging in, entering a room, or an action), the scale management unit 136 increases the number of servers as a process to increase server resources.
[0187] On the other hand, if it is not determined in step S301 that the predetermined situation has occurred, it is determined in step S303 whether or not a specific user has logged in. If it is not determined that a specific user has logged in, the process ends. On the other hand, if it is determined that a specific user has logged in, the process proceeds to step S304. For example, when the entry / exit processing unit 134 (e.g., the login authentication device 101) performs login authentication processing based on a user's login request, it determines whether the user who logged in is a specific user. For example, if the user who logged in has user ID "u1" in FIG. 7(A), the evaluation index is negative, so it is not determined that a specific user has logged in, and the process ends. On the other hand, if the user who logged in has user ID "u2", the evaluation index is positive, so it is determined that a specific user has logged in.
[0188] In step S304, server resource increase processing is performed according to the specific user who logged in, and the server is placed in a continuous provision state, and the processing ends. For example, if the type and number of servers to be increased are determined according to the evaluation index, and if the logged-in user has user ID "u2," the evaluation index is 5, so the scale management unit 136 (e.g., server management device 105) executes processing to increase the number of normal servers and high-spec servers by one. If the logged-in user has user ID "u3," the evaluation index is 18, so the scale management unit 136 executes processing to increase the number of high-spec servers by four and the number of highest-spec servers by three. As a result, the number of servers is increased according to the influence of each specific user, thereby improving the processing capacity of the distribution server 100.
[0189] This allows the server to be reinforced in advance when a specific user logs in, before the specified situation occurs, even when the situation is not yet reached and the server load is not increasing.
[0190] The process of increasing server resources may be a scale-up process that improves server performance. The predetermined situation may also include a situation where the room's maximum number of occupants is exceeded (when the room is full, or when a predetermined number of occupants is reached just before full capacity). When the room's maximum number of occupants is exceeded, the number of servers may be increased to increase the number of rooms, or the server performance may be improved to increase the number of rooms that can be provided on one server.
[0191] (Distribution information volume change processing) FIG. 19 is a flowchart illustrating a distribution information amount variation process for varying the amount of information distributed from distribution server 100 to a user terminal, which is part of the distribution server 100 setting variation process executed in distribution server 100. The distribution information amount variation process is repeatedly executed at predetermined time intervals by control unit 130 of distribution server 100. Distribution server 100 performs various processes including the distribution information amount variation process based on programs stored in storage unit 120. Note that an example will be described in which the determination of whether or not a user is a specific user is made based on the evaluation index of FIG. 7(A). In the distribution information amount variation process, a time when the server load becomes heavy or a time just before (before) the server load becomes heavy is referred to as a predetermined situation.
[0192] First, in step S401, it is determined whether a predetermined situation has occurred. If it is determined in step S401 that a predetermined situation has occurred, the process proceeds to step S402, where the server is set to a continuous provision state by transmitting information to the user terminal for reducing the number of synchronization signal transmissions according to the predetermined situation (load situation). For example, if a predetermined situation occurs in which the server load becomes heavy due to factors including user behavior (e.g., entering a room by logging in, entering a room, or an action), the data distribution unit 132 transmits information to the user terminal indicating that the server is in a congested state, thereby reducing the number of synchronizations from the user terminal, thereby reducing the amount of information distributed from the distribution server 100 to the user terminal.
[0193] In step S403, the amount of information (the amount of information itself) delivered from the delivery server 100 to the user terminal is reduced according to a predetermined situation, the server is set to a continuous provision state, and the process ends. For example, a process is performed to change the settings so that the virtual space drawing information (drawing load amount) delivered from the data delivery unit 132 to the user terminal is reduced and then delivered to the user terminal. For example, if a predetermined situation occurs in which the server load becomes heavy due to factors including user behavior, a process is performed to reduce the amount of objects (including user avatars) displayed from the server, the amount of drawing information such as image resolution, etc.
[0194] On the other hand, if it is not determined in step S401 that the predetermined situation has occurred, then in step S404 it is determined whether or not a specific user has logged in. If it is not determined that a specific user has logged in, the process ends. On the other hand, if it is determined that a specific user has logged in, the process proceeds to step S405. For example, when the entry / exit processing unit 134 (e.g., the login authentication device 101) performs login authentication processing based on a user's login request, it determines whether or not the user who logged in is a specific user. For example, if the user who logged in to the room is user ID "u1" in FIG. 7(A), the evaluation index is negative, so it is not determined that a specific user has logged in, and the process ends. On the other hand, if the user who logged in is user ID "u2," the evaluation index is positive, so it is determined that a specific user has logged in.
[0195] In step S405, the server is set to a continuous provision state by transmitting information to the user terminal for reducing the number of synchronization signal transmissions according to the specific user. For example, by transmitting information that the server is congested to the user terminal from the data distribution unit 132, the number of synchronizations from the user terminal is reduced, thereby reducing the amount of information distributed from the distribution server 100 to the user terminal. For example, the number of synchronizations is changed according to the evaluation index, and for users with evaluation indexes 1 to 5, the number of synchronizations per second is controlled to be three times instead of the usual six times, and for users with evaluation indexes 6 or higher, the number of synchronizations is controlled to be once per second.
[0196] In step S406, the amount of information delivered from distribution server 100 to the user terminal is reduced depending on the specific user, and the server is placed in a continuous provision state, and the process ends. For example, a process is performed to change the settings so that the virtual space drawing information (drawing load) delivered from data delivery unit 132 to the user terminal is reduced before being delivered to the user terminal. Also, different processes may be performed depending on the specific user. For example, the amount of information may be reduced so that the number of objects displayed in the virtual space is reduced when a user with a rating index of 11 or higher enters the room compared to when a user with a rating index of 1 to 10 enters the room.
[0197] As a result, even when the situation is not yet a predetermined situation and the server load is not increasing, it is possible to perform processing in advance to reduce the amount of information delivered from the delivery server 100 to the user terminal when a specific user logs in, before the situation reaches the predetermined situation.
[0198] The processing in steps S402 and S405 is not limited to transmitting information to the user terminal for reducing the number of times a synchronization signal is transmitted, but may involve changing the settings to reduce the number of times synchronization is performed from the data distribution unit 132 to the user terminal (synchronization count reduction setting), thereby placing the server in a continuous provision state by processing to reduce the number of times synchronization is performed between the distribution server 100 and the user terminal. Also, the processing in steps S403 and S406 may involve, for example, transmitting information from the data distribution unit 132 to the user terminal that the server is congested, thereby reducing the amount of rendering information of the virtual space requested by the user terminal, thereby placing the server in a continuous provision state.
[0199] The predetermined situation may also include a situation where the room exceeds its upper limit of capacity (when it is full, or when it reaches a predetermined number of capacity just before it is full). When the room exceeds its upper limit of capacity, processing may be performed to reduce the amount of information distributed to the distribution server 100 and the user terminal. This can prevent an increase in the number of people in the room, for example, when the number of user actions increases and the amount of information required to update (synchronize) information in the virtual space increases, which may increase the server load. Therefore, processing can be performed in advance to set the server to a continuous provision state.
[0200] <Examples of specific configurations and effects>
[0201] (1-1) In the above-described embodiment, when a predetermined situation occurs, such as when the load on the distribution server 100 exceeds a threshold or when the maximum number of people that can be associated with a room is reached, depending on factors including multiple types of user actions (for example, entry by logging in, entry into a room, or action actions within the virtual space), the server reinforcement process of steps S301 to S302 in FIG. 18 or the distribution information amount change process of steps S401 to S403 in FIG. 19 is executed, thereby performing processing to put the virtual space into a continuous provision state so that it can be continuously provided to users. However, even when the load on the distribution server 100 does not exceed a threshold or when the maximum number of people that can be associated with a room has not been reached, and when a specific user, such as a celebrity or famous person with user attribute numbers "2," "3," or "5" in FIG. 7A or a positive evaluation index, enters the virtual space, the server reinforcement process in steps S303 to S304 in FIG. 18 and the distribution information amount change process in steps S404 to S406 in FIG. 19 are executed to set the distribution server 100 to a continuous provision state. This allows the virtual space provider to change the setting to a continuous provision state in advance when the specific user enters the virtual space. This makes it possible to take measures in advance to deal with the load that may arise when the specific user enters the virtual space.
[0202] (1-2) In the above-described embodiment, the process of setting the virtual space providing unit to a continuous provision state involves performing server augmentation processing (processing to increase resources) of distribution server 100 in steps S302 and S304 in Fig. 18. As server augmentation processing, server management device 105 in Figs. 16 and 17 performs scaling out of distribution server 100 (increasing the number of servers), such as processing to increase servers 101c and 101d of login authentication device 101, or scaling up of the distribution server (increasing the specifications of the CPU and memory of the server). As a result, the resources functioning as distribution server 100 increase, improving the processing capacity of distribution server 100 and enabling it to withstand the load, thereby enabling it to continuously provide the virtual space to users.
[0203] (1-3) In the above-described embodiment, as a process for setting distribution server 100 to a continuous provision state, distribution information amount change processing is performed to reduce the overall amount of information distributed from distribution server 100 to user terminals, such as steps S402, S403, S405, and S406 of Fig. 19. The distribution information amount change processing may include a process for transmitting information to reduce the number of times a synchronization signal is transmitted from the user terminal, such as steps S402 and S405 of Fig. 19, a process for transmitting information to reduce the amount of requested drawing information, thereby reducing the number of times synchronization is performed between distribution server 100 and the user terminal, a process for reducing the amount of information distributed from distribution server 100 to the user terminal, such as steps S403 and S406 of Fig. 19, or a process for reducing the number of times synchronization is performed from distribution server 100 to the user terminal, thereby reducing the amount of information itself when distributed from distribution server 100 to the user terminal. This reduces the amount of information distributed from distribution server 100 to user terminals, reducing the processing load on distribution server 100 and making it able to withstand the load, making it possible to continuously provide the virtual space to users.
[0204] (1-4) In the above-described embodiment, a setting change process is performed to set the distribution server 100 to a continuous provision state in preparation for a possibility that a predetermined situation will occur when a specific user enters the virtual space or when a specific user enters the virtual space. The predetermined situation includes a situation in which the load on the distribution server 100 exceeds a predetermined threshold due to a user's entry into the virtual space, a user's movement within the virtual space, an action such as the use of an item, or other actions, and a situation in which a waiting time occurs due to a number of users requesting entry in excess of the number of people allowed to enter the room. By performing the setting change process in this embodiment, even if the load on the distribution server 100 exceeds a predetermined threshold and there is a possibility that the virtual space will no longer be able to be continuously provided to users, the setting change process can be performed to change the distribution server 100 to a continuous provision state. This makes it possible to continuously provide the virtual space to users.
[0205] (1-5) In the above-described embodiment, when a specific user, such as a celebrity or famous person with a user attribute type of "2," "3," or "5" in Fig. 7 or a user with a positive evaluation index, enters the virtual space, the setting change process of the distribution server 100 in Fig. 18 and Fig. 19 is executed so as to be a process according to the evaluation index, etc., of the specific user. This makes it possible to change the setting of the distribution server 100 to a continuous provision state in a predetermined situation in response to the entry of a user who is thought to have an influence on the behavior of other users into the virtual space.
[0206] (1-6) In the above-described embodiment, entry into a virtual space includes entry by logging in to the virtual space, and the setting change process of the distribution server 100 is performed in response to the login of a specific user. Furthermore, in step S304 of the server augmentation process in Fig. 18, it is possible to increase the resources of the login authentication API server that performs authentication (processing) to determine whether the user's login has been successful, the login authentication device 101 in Fig. 16, the entry / exit processing unit 134, etc. As a result, even if a load is placed on the server that performs login authentication processing due to another user logging in after a specific user has logged in, the server can be made to withstand the load.
[0207] (2-1) In the above-described embodiment, when a specific user having a positive evaluation index, which varies depending on external evaluations, which are evaluations from sources other than the user, as shown in Fig. 7(A), or a specific user such as a celebrity or famous person with user attribute numbers "2," "3," or "5," enters a virtual space, an entry notification process is executed to notify (notify) other users that the specific user has entered the virtual space, as shown in Figs. 12 to 15. This allows other users to be notified that the specific user has entered the virtual space, making it easier for other users to obtain information about the specific user, thereby promoting the development of the virtual space.
[0208] (2-2) In the above-described embodiment, the users of the user terminals to which notification information is delivered in step S105 in Fig. 12 include users whose entry status in Fig. 7 is "in the room." This allows a notification that a specific user has entered the room even when the user is in the virtual space, thereby preventing a situation in which a user remains unaware that a specific user has entered the virtual space.
[0209] (2-3) In the above-described embodiment, in steps S105A and S105B of the entry notification process 3 in Fig. 14, the users of the user terminals to be notified (notified) that a specific user has entered the virtual space do not include users whose entry status in Fig. 7 is "in," but include users who have not entered the virtual space whose entry status in Fig. 7 is "leaving." This prevents users who are in the virtual space from being notified that a specific user has entered the virtual space, thereby reducing the risk of the notification disrupting the sense of immersion in the virtual space.
[0210] (2-4) In the above-described embodiment, the push notification in FIG. 10(A), the page displaying information about a specific user in FIG. 10(B), and the contents of the bulletin board object O in FIG. 11 can include information about the area (e.g., "Entered area X!") or room (e.g., "Entered room ID 0001") that the specific user has entered. This allows other users who have received the push notification or viewed the information on the bulletin board object O to identify the virtual space that the specific user has entered. This makes it easier for other users to subsequently enter the same space (e.g., the same area or the same room), which can promote the development of the virtual space.
[0211] (2-5) In the above-described embodiment, in a fan community app such as that illustrated in FIG. 10(B), a user can pre-select and store a favorite user as a favorite talent from among specific users such as talents. Furthermore, when a pre-selected talent (specific user) enters a virtual space, a push notification of the talent's entry into the virtual space can be sent, as shown in FIG. 10(A). Furthermore, by selecting the favorite filter 45 on a specific page within the app that displays information about the specific user in FIG. 10(B), information about the pre-selected talent entering the virtual space can be extracted and displayed. This allows the reported information about the specific user to be a favorite user, thereby improving satisfaction with the reported information.
[0212] (3-1) In the above-described embodiment, when a specific user enters a virtual space, information about the specific user's entry can be displayed in response to a viewing request from the user, such as in steps S105 to S107 of Fig. 12 and steps S203 to S205 of Fig. 13, on the celebrity schedule information of a community application such as Fig. 10(B) that allows users to view information about the specific user, or on a bulletin board object O located in a virtual space such as Fig. 11. This allows other users to view the fact that the specific user has entered the virtual space as information about the specific user, thereby improving convenience for users who seek information about the specific user.
[0213] (3-2) In the above-described embodiment, information about a specific user can be displayed in a specific area in the virtual space, such as the bulletin board object O in Fig. 11. This allows a user to view information about a specific user even while inside the virtual space, which increases convenience for users who want information about a specific user.
[0214] (4-1) In the above-described embodiment, when a specific user logs in at steps S102 and S103 in Fig. 12, a screen can be displayed on the screen of the user terminal of the specific user that allows the specific user to select whether or not to notify other users of the login. When the setting state is set to allow other users to log in, for example by selecting the "Yes" icon 22Y in Fig. 9(B), the entry of other users can be notified at steps S105 and S106. This allows the specific user to set whether or not to notify other users when the specific user enters a room, taking into account the specific user's preferences, situation, and the like, thereby improving convenience for the specific user.
[0215] (4-2) In the above-described embodiment, when a specific user enters a virtual space, a selection to permit, such as selecting the "Yes" icon 22Y on the screen in Fig. 9(B) that allows the user to select whether or not to notify other users of the user's login, triggers notification of the user's entry to other users in steps S105 and S106 in Fig. 12. This allows the specific user to select whether or not to notify other users of the user's entry when entering the virtual space, thereby enabling the specific user to notify other users effectively according to the situation at the time of entry.
[0216] (5-1) In the above-described embodiment, in steps S105C and S105D of the entry notification process 4 in Fig. 15, the entry of a specific user is notified to the user terminals of users other than users who have entered the virtual space under a specific situation, such as when participating in a specific content such as a live event. This prevents a user from being notified when there is little need to be notified that a specific user has entered the virtual space due to the user's entry under a specific situation. Furthermore, since a notification is not sent when the user is participating in a specific event, it is possible to prevent the user's immersion in the event from being interrupted.
[0217] <Modification> Modifications to the above-described embodiment are listed below.
[0218] <Other examples of specific users and setting change processing> (About attribute numbers and server enhancement processing) In the above-described embodiment, an example has been described in which, when executing the server augmentation process described with reference to Fig. 18, if a user with a positive evaluation index logs in in step S303, it is determined that a specific user has logged in. However, this is not limiting, and if a user who is a celebrity or a famous person with an attribute number such as "2," "3," or "5" logs in, it may be determined that a specific user has logged in, and resources may be increased according to the attribute number.
[0219] (Relationship between evaluation index, attribute number and amount of information delivered) In the above-described embodiment, with reference to FIG. 8, an example has been described in which server resources (number of servers, CPU and memory specifications) to be varied for each evaluation index are determined, and the server resources are varied according to the evaluation index of a specific user. Similarly, with regard to the amount of information to be distributed, the number of synchronizations between distribution server 100 and user terminals may be changed or the amount of information to be reduced and distributed from distribution server 100 may be adjusted according to the evaluation index. For example, when a user with an evaluation index of 1 to 5 enters the room, the number of synchronizations may be set to three, and when a user with an evaluation index of 6 or higher enters the room, the number of synchronizations may be set to one. Alternatively, the number of objects displayed in the virtual space may be reduced when a user with an evaluation index of 11 or higher enters the room compared to when a user with an evaluation index of 1 to 10 enters the room.
[0220] The amount of information to be distributed may be adjusted for each attribute number. For example, when a specific user associated with the attribute number "2" in Fig. 7(B) enters the room, the number of synchronizations per second may be set to one, and when a specific user associated with the attribute number "5" enters the room, the number of synchronizations per second may be set to three.
[0221] (Regarding evaluation index and entry notification processing) In the above-described embodiment, the determination of whether or not a user is a specific user in step S102 of Fig. 12 is made based on an attribute number associated with the user. However, the determination of whether or not a user is a specific user may also be made based on an evaluation index. For example, if a user has a positive evaluation index, the user is determined to be a specific user, and a process for notifying other users that the user has entered the virtual space is executed. However, if a user has a negative evaluation index, the user is not determined to be a specific user, and the process for notifying other users that the user has entered the virtual space may not be executed.
[0222] (User attribute number and evaluation index) In the above embodiment, an example in which a user attribute number and a user evaluation index are associated with each user has been described with reference to Fig. 7. However, this is not limiting, and only one of the "user attribute number" and the "evaluation index" may be defined.
[0223] Furthermore, when a user account is created (when a user ID is created), the default attribute number "1" may be assigned in advance, which indicates a general user. The administrator may also arbitrarily change and store the attribute number of an already created user account. Alternatively, the administrator may assign an attribute number in advance, and then add the user to the data table of user information 121. The attribute number is not limited to a default number or one assigned arbitrarily by the administrator, but may also vary depending on other factors. For example, depending on the "rating index," a user whose "rating index" exceeds a predetermined value may be assigned the user attribute number "5" as a celebrity.
[0224] In the above-described embodiment, an example has been described in which the degree of variation (resource amount, distribution amount, etc.) in the setting variation process of the distribution server 100 is predetermined for each evaluation index or attribute number, with reference to Figure 8 etc. In addition to this, a predetermined number of servers may be associated with each user ID. For example, the number of servers can be set to three for user ID "u2" and ten for user ID "u7", and when "u2" logs in, three servers are added, and when "u7" logs in, ten servers are added.
[0225] Alternatively, the administrator may predetermine an evaluation index for each user corresponding to the desired number of servers, etc., so that each user will have the desired number of servers, etc. For example, if the administrator wants to increase the number of normal servers and high-spec servers by one when user ID "u2" enters the room, the administrator may predetermine the evaluation index for user ID "u2" to "5."
[0226] (Another example of determining a specific user (special user)) In the above embodiment, an example has been described in which a determination as to whether or not a user is a specific user is made based on an attribute number or an evaluation index. However, as exemplified by the user ID "u6" in FIG. 7(A), an example has also been described in which, when both an attribute number and an evaluation index are defined, if a user is a specific user in either of the two, the user may be determined to be a specific user and processing may be performed. However, this is not limited to this. When both an attribute number and an evaluation index are defined, if the user is not considered to be a specific user in either the user attribute number or the evaluation index, processing as a specific user may not be performed. For example, regardless of whether the user has a specific user attribute number (e.g., 2, 3, or 5 in FIG. 7(B)), if the evaluation index is not a positive value, the user may not be determined to be a specific user.
[0227] Alternatively, when both the attribute number and the evaluation index are determined, whether the attribute number or the evaluation index is used as the criterion to be referenced when determining whether a user is a specific user may be determined in advance depending on the processing content, such as the entry notification processing or the setting change processing of the distribution server 100, and the criterion to be referenced when determining whether a user is a specific user may differ depending on the processing content. For example, when performing the entry notification processing to notify other users that they have entered a virtual space, the attribute number of the user who has entered may be referenced and the notification processing may be executed if the user is determined to be a specific user, and the setting change processing of the distribution server 100 may be performed by reference to the evaluation index of the user who has entered and depending on whether the user is determined to be a specific user.
[0228] <Regarding entry notification processing> (About choosing whether to notify other users) In the above-described embodiment, an example was described in which, when a specific user has not permitted other users to be notified when logging in, for example, by selecting the "No" icon 22N in FIG. 9(B) in step S104 of FIG. 12, the specific user's login is not notified. The notification permission method is not limited to displaying the screen in FIG. 9(B) each time a user logs in. Instead of or in addition to displaying the screen in FIG. 9(B), the user may be able to select whether to turn the notification on or off in advance on a setting screen. Alternatively, either notification on or notification off may be set by default, and the user may be able to select whether to turn the notification on or off each time a user logs in. Furthermore, the specific user may be able to select the content of the information to be notified, such as whether to notify the user of entry into a room or whether to notify the room ID.
[0229] In the above-described embodiment, an example has been described in which, after a login request in Fig. 9(A) is transmitted to distribution server 100 in step S101 in Fig. 12, when it is determined in step S102 that the user is a specific user, a screen in Fig. 9(B) that allows the user to select whether or not to notify other users is displayed. However, the present invention is not limited to this. For example, the user terminal may be a dedicated terminal for the specific user, and the selection screen in Fig. 9(B) may be displayed before the login request is transmitted to distribution server 100. When "Yes" icon 22Y or "No" icon 22N is selected in Fig. 9(B), the login request may be transmitted to distribution server 100 together with information indicating whether or not to permit notification to other users.
[0230] (About push notifications) In the above-described embodiment, a push notification has been exemplified with reference to FIG. 10(A) as an example of a mode for informing (notifying) other users that a specific user has entered a room. The push notification may be displayed on a user terminal, and a user may select the push notification to transition to a virtual space that the specific user has entered. For example, a login screen for the virtual space may be displayed in response to the push notification. Alternatively, the user may be allowed to enter a room in which the specific user is currently located, or a room that provides an area corresponding to the room in which the specific user is currently located.
[0231] Furthermore, the push notification may include bonus information for granting a bonus. For example, a serial code may be displayed in the push notification message along with the login information of a specific user, and the user may be granted a bonus by entering the serial code when entering the virtual space. This may further encourage the user to enter the virtual space via the push notification. Furthermore, an expiration date may be set for the serial code, and the bonus will not be granted unless the serial code is entered within a predetermined period (e.g., within three hours) after being notified. Furthermore, the serial code may be entered not only when entering the virtual space, but also in a predetermined area within the virtual space, an item shop, or the like.
[0232] (Example of where to display information about a specific user) In the above embodiment, with reference to FIG. 10(B), a page on which information about a specific user provided by the specific user information media management server 500 can be viewed is described, exemplifying the display in a fan community app. Information about a specific user that can be displayed on the display screen of a user terminal may also be displayed on a website screen that can be viewed by the user via a web browser. For example, if the specific user is a celebrity, the information page on the website may display information about the celebrity's video streaming on a video streaming site, their entry status into the virtual space, and so on. The website information page may use an API to acquire information about the streams by the celebrity's account on the video streaming site, handles in the description section, and so on, and display appearance information. Furthermore, by utilizing the virtual space user entry status API, if the account of a specific user celebrity is included among the users currently in the virtual space, the entry information may be displayed on the web page along with the celebrity's icon, as shown in FIG. 10(B), for example. When the celebrity logs out, the entry information may be deleted or displayed as having left the virtual space. When the user accesses the website, the web page is displayed in the web browser of the user's device, allowing the user to obtain information about the talent. The user may also be able to transition to a virtual space based on the entry information.
[0233] (Other examples of users who may be notified by other users) In the above embodiment, as described with reference to FIG. 10(B), for example, by selecting the favorite filter icon 45 in a fan community app, information about a talent or the like that the user has previously selected as a favorite can be extracted and displayed (or a push notification can be sent). Therefore, an example has been described in which information about a specific user that the user has previously selected as a favorite among specific users can be notified when that specific user has entered a virtual space. In the entry notification process, not only when the specific user has been previously selected as a favorite in the fan community app, but also when the specific user has previously been selected by the user, only information about the entry of the pre-selected user may be notified. For example, the entry notification process may be performed for a user that has previously been selected in the virtual space, or only information about the entry of a specific user that the user follows in the virtual space or a specific user that the user has previously selected from a list of specific users (e.g., a talent list) may be notified. By storing the user that has previously been selected by the user in the storage unit 120 of the distribution server 100 or the user terminal 320, when a login of the specific user is detected, the notification can be sent on the user terminal of the user who previously selected the specific user.
[0234] Furthermore, in the above-described embodiment, an example has been described in which information identifying a user pre-selected by a user (information identifying whether or not the user has been selected), which is stored in the storage unit 520 of the specific user information medium management server 500, is transmitted from the specific user information medium management server 500 for each user together with information including information on other specific users, and a process of extracting the pre-selected specific user is performed at a user terminal receiving the transmitted information. However, a similar process may also be performed at the distribution server 100. For example, information identifying a user pre-selected by a user (information identifying whether or not the user has been selected), which is stored in the storage unit 120 of the distribution server 100, may be transmitted from the distribution server 100 for each user together with information on the other specific users, and a process of extracting the pre-selected specific user may be performed at a user terminal. Alternatively, a specific user pre-selected by a user may be extracted based on information stored in the storage units 120 and 520 of the distribution server 100 or the specific user information medium management server 500, and only information on the entry of the extracted specific user may be distributed to the user terminal.
[0235] Furthermore, an engagement index may be calculated between users based on their behavioral history in the virtual space, and users whose engagement index with a specific user who has entered the virtual space is equal to or greater than a predetermined value may be notified that the specific user has entered the virtual space. The engagement index is calculated by the control unit 130 based on behavioral history, such as the number of times a user has participated in an event related to the specific user, the amount of charges related to the specific user (e.g., tips, merchandise purchases, etc.), or the number of times the user has been in the same room (or the same area) as the specific user. The calculation of the engagement index may not be limited to a specific period, or may be calculated based on the amount of charges during a specific period.
[0236] In the above-described embodiment, an example was described in which the information to be notified to other users is information regarding the entry of a specific user. However, in addition to this, if there is a user who has performed a predetermined action in the virtual space, other users may be notified of the presence of the user who has performed the predetermined action, even if the user is not a specific user. For example, this includes detecting that a user has moved to a position corresponding to a predetermined area in the virtual space. The predetermined area is, for example, a platform on which an event is held, and the presence of a user moving to the predetermined area indicates that the event will begin. When a user has climbed onto the platform, a message such as "P-san has climbed onto the platform in area Y!" is notified, as illustrated by the bulletin board object O in FIG. 11.
[0237] (Information about specific users) In the above embodiment, as illustrated with reference to Figures 10(B) and 11, the information about a specific user that can be viewed in response to a viewing request from a user includes information other than entry information into the virtual space about the specific user (for example, video distribution information, event information in the virtual space, etc.). However, the information is not limited to this, and may be a page in an app where only information about entry into the virtual space of a specific user can be viewed, or an object in the virtual space, etc.
[0238] (Regarding entry notification processing) In the above-described embodiment, an example in which an entry notification process is performed in response to a specific user logging in to a virtual space has been described with reference to FIGS. 12 to 15. However, instead of or in addition to this, for example, in step S101 of FIG. 12, it may be determined whether a specific user has entered a room in the virtual space, and other users may be notified of the specific user's entry into any room. It may also be possible to notify other users of which room the specific user has entered. For example, in response to a specific user's entry into area Y, a push notification or the like may be sent along with information about the area the specific user has entered.
[0239] Alternatively, as exemplified by the bulletin board object O in Fig. 11, notification may be provided in stages, such as when a specific user logs in and when the specific user has entered a predetermined area. Also, instead of or in addition to the area information, the room ID of the room that the specific user has entered may be notified.
[0240] Furthermore, when a specific user moves to a room different from the room in which the specific user was previously present, processing may be performed to notify the user that the specific user has moved each time the user moves.
[0241] Furthermore, even if a specific user enters a virtual space, if a predetermined time has not elapsed since the previous entry, the notification may not be sent. For example, if the predetermined time is set to 10 minutes, and a specific user logs in, if 10 minutes have not elapsed since the previous login, the subsequent (current) login will not be notified. Similarly, if a user re-enters the same room within a predetermined time since the previous entry into the specific room, the notification may not be sent. This can prevent push notifications from being sent multiple times due to a specific user accidentally logging out, for example.
[0242] (Regarding entry notification process 2) In the above embodiment, in step S201 of Fig. 13, when the specific user information medium management server 500 receives notification information distributed from the distribution server 100 in step S105 of Fig. 12, an example has been described in which information about the login of a specific user is notified to the user terminal. That is, an example has been described in which the identification of the newly logged-in specific user who is the target of notification to other users is performed by the distribution server 100. However, without being limited to this, the specific user information medium management server 500 may identify the newly logged-in specific user based on the user entry status acquired in step S203, and may determine whether the newly logged-in specific user is included in the user entry status acquired in step S203, and when the newly logged-in specific user is included, a push notification or the like may be sent spontaneously from the specific user information medium management server 500 to the user terminal.
[0243] In the above embodiment, an example has been described in which the entry status is acquired using the user entry status API of the distribution server 100 in step S203 of Fig. 13. However, the present invention is not limited to this, and when a specific user logs in, the latest information on the user entry status may be distributed (transmitted) by the distribution server 100 to the specific user information media management server 500.
[0244] (Regarding entry notification process 3) In the above embodiment, an example has been described in which the distribution server 100 notifies (notifies) users who have not entered (logged in) into the virtual space that a specific user has entered (logged in) into the virtual space in steps S105A and S105B of Fig. 14, but similar processing may also be performed in the specific user information medium management server 500. For example, the storage unit 520 of the specific user information medium management server 500 may associate in advance the user ID in the specific user information medium management server with the user ID in the virtual space provided by the distribution server 100, or the same ID may be used for both user IDs. In this way, a notification may be sent to the user terminals of users not included in the user entry status acquired in step S203 in Fig. 13.
[0245] In the above-described embodiment, in steps S105A and S105B of FIG. 14, an example was described in which users who have not entered (logged in) into the virtual space are notified (notified) that a specific user has entered (logged in) into the virtual space. However, even if users are logged in to the virtual space, they may be notified if they are not in a room in the same area as the area the specific user has entered (or in the same room as the specific user).
[0246] In addition, in the entry notification process 3, for users who are not logged in to the virtual space extracted in step S105A, the information about the specific user delivered in step S108 may include information indicating that the specific user has logged in, and the information delivered to users who are logged in to the virtual space may not include information indicating that the specific user has logged in.
[0247] (Regarding entry notification process 4) In the above embodiment, an example has been described in which, in the distribution server 100, steps S105C and S105D of Fig. 15 notify (notify) users other than users who have entered the virtual space under predetermined circumstances that a specific user has entered (logged in) into the virtual space, but as explained above (regarding entry notification process 3), similar processing may also be performed in the specific user information media management server 500. For example, the user entry status acquired in step S203 of Fig. 12 may include information on content in which each user is participating, and based on the acquired user entry status, a notification may not be sent to the user terminal of a user who has entered the virtual space under predetermined circumstances.
[0248] In the above embodiment, an example has been described in which a user who has entered a room under a predetermined situation is not notified that a specific user has entered (logged in). However, this is not limited to this, and the specific user may not be notified when the specific user enters a room under a predetermined situation. For example, this may include a case in which the specific user enters a room to host or carry out a pre-planned event in a virtual space under a predetermined situation. If the specific user is a celebrity and enters a room for a pre-planned live event in which the celebrity is the main character, the entry may not be notified to other users. In this case, if the distribution server 100 determines that a predetermined specific event period has occurred when the specific user logs in, the process of notifying other users may not be performed.
[0249] Furthermore, if a specific user logs in under a predetermined circumstance, the information about the specific user distributed in response to a user's browsing request in step S107 of FIG. 12 and step S204 of FIG. 13 may not include the login information of the specific user who logged in under the predetermined circumstance. For example, when the user can predict in advance that the specific user will log in or when the login will occur, or when the user knows in advance that the specific user will enter the room, the notification may not be made. For example, by notifying the user of planned entry information or event information as the information about the specific user illustrated in FIGS. 10(B) and 11, the user can obtain information about the specific user's possible entry in advance. Furthermore, when a large-scale event is planned and a large number of specific users are expected to participate, the amount of information notified can be prevented from becoming too large. In this way, depending on whether the specific user's entry is planned in advance, if the entry is planned in advance, the notification may not be made to other users.
[0250] In the entry notification process 4, for users other than the users who have entered the virtual space extracted in step S105C under specified circumstances, the information about the specific user delivered in step S108 may include information indicating that the specific user has logged in, and the information delivered to users who have logged in to the virtual space under specified circumstances may not include information indicating that the specific user has logged in.
[0251] <Regarding the setting change process of the distribution server 100> (Regarding entry into the virtual space) In the above-described embodiment, an example has been described in which a determination is made as to whether a specific user has logged in at step S303 in FIG. 18 and step S404 in FIG. 19. However, this is not limiting, and a determination may be made as to whether a specific user has entered a virtual space at the time of entering a room, rather than at the time of entry by logging in to the virtual space, and processing may be performed accordingly. For example, if a determination is made in step S303 in FIG. 18 or step S404 in FIG. 19 that a specific user has entered a specific room in the virtual space, a process of increasing server resources may be performed in step S304, or a process of reducing the amount of information in steps S405 and S406 may be performed. Note that the server whose resources fluctuate may be a server corresponding to the entry / exit processing unit 134 that performs login authentication (e.g., a login authentication API server), a server having a function for providing a user with information about an area of the virtual space, a list of rooms related to the area that can be entered, or the like, or a server corresponding to a room. 19 may be performed on the user terminals of all users who have entered the virtual space, or may be performed on the user terminals of some of the users. The "some" includes, for example, users who have entered a room in the same area as the area into which a specific user has entered, or users who will enter the same room as the room into which a specific user has entered.
[0252] (Example of when not changing) In the above embodiment, an example has been described in which, if the user who has entered the room is a specific user, setting change processing is performed in step S303 of Fig. 18 and step S404 of Fig. 19. However, if the desired resource level or information volume level has already been reached, processing may not be performed even if the specific user has entered the room. For example, in Fig. 8, the number of servers to be increased in operation is set, but a maximum number of servers may be set, and if the number of servers is already at the maximum number of servers, the number may not be increased even if a specific user logs in.
[0253] (Regarding the degree of setting fluctuation in setting fluctuation processing) In the above-described embodiment, as illustrated in steps S304 of FIG. 8 and FIG. 18, steps S405 and S406 of FIG. 19, examples of varying the degree of resource availability (e.g., number of servers) and the amount of information (e.g., number of synchronizations) have been described as examples of varying the degree of variation of settings predetermined for a specific user. However, this is not limiting, and the degree of variation of settings performed when a specific user enters the room may be uniform. In other words, a certain process may be performed for a specific user regardless of the associated evaluation index or attribute number. For example, the number of servers may be increased by three when user ID "u2" in FIG. 7(A) logs in or when user ID "u7" logs in. Alternatively, the number of synchronizations may be three regardless of whether "u2" or "u7" logs in.
[0254] Alternatively, the degree of change in the settings for a specific user may be calculated each time the specific user enters the room. For example, the degree of change may be calculated each time using a predetermined formula that defines the evaluation index of the specific user at the time of entry and the current resource usage rate as variables.
[0255] (When multiple specific users are logged in) In the setting variation process in the above-described embodiment, when multiple specific users enter a room, the degree of variation in resources or information volume may be calculated based on the degree of variation in settings by specific users who have already entered the room and the degree of variation in settings by specific users who enter later, and the control unit 130 may perform processing according to the calculation results in response to the entry of the specific users. For example, if user ID "u2" in FIG. 7 enters the virtual space and then user ID "u8" enters the room, the degree of variation may be calculated using a criterion that combines the respective evaluation indices of "5" and "3." For example, the degree of resources or the degree of information volume may be determined according to the evaluation index obtained by adding up the evaluation indices, or the degree of resources or the degree of information volume may be determined according to the higher evaluation index. For example, if a user with an evaluation index of "3" has already entered the room and a user with an evaluation index of "5" enters the room later, the setting change process has already been performed according to the evaluation index of "3." However, a setting change process according to the evaluation index of "5" (for example, increasing the number of servers from the maximum number of operating servers according to the evaluation index of "3" to the maximum number of operating servers according to the evaluation index of "5") may be performed. Also, for example, if a user with an evaluation index of "5" has already entered the room and a user with an evaluation index of "3" (lower than "5") enters the room later, the setting change process has already been performed according to the evaluation index of "5," so no new setting changes may be performed. Alternatively, the resource level or information volume level may be determined according to the evaluation index obtained by adding half of the lower evaluation index to the higher evaluation index, or the degree of change may be calculated using each evaluation index as a variable in a predetermined calculation formula.
[0256] (Regarding setting change processing according to content load) The setting variation process in the above-described embodiment may be performed according to the load for each piece of content provided by distribution server 100. For example, the degree of increase in resources and the degree of decrease in distribution volume may be greater when a specific user enters a room providing game content that is thought to have a heavy load than when the specific user enters a room providing chat-only content that has a relatively light load.
[0257] Furthermore, settings may be changed in response to a specific user's move to a room in a virtual space. For example, in the case of a server expansion process, processing may be performed to increase server resources corresponding to game content when a specific user moves from a room providing chat-only content (the server resources may have already been increased in response to the room providing the chat-only content) to a room providing game content. Furthermore, server resources for a room providing chat-only content that the user entered before the move may be reduced. Alternatively, when a user moves from a room providing game content to a room providing chat-only content, server resources for a room providing game content that the user entered before the move may be reduced. The room may include a room corresponding to an area, a room to which a user can transition by selecting content or the like from within the area, a room to which a user can transition from within the area via a portal, a room that is provided regardless of the area, and so forth.
[0258] Furthermore, in the case of distribution information amount variation processing, for example, processing may be performed to reduce the amount of information distributed from distribution server 100 to a user terminal in response to a specific user moving from a room where chat-only content is provided to a room where game content is provided and the load is heavy. For example, since the processing load is relatively light in a room where chat-only content is provided, setting variation processing may not be performed, but setting variation processing may be performed when the user moves to a room with content that has a heavy load.
[0259] (Regarding the relationship between areas and rooms) The relationship between areas and rooms in the virtual space in the above-described embodiment is not limited to one type of room being defined for each area, but multiple types of rooms each providing different content may be defined within the area. For example, in an area modeled after a city, a transition may be made between a room modeled after the city and a room providing different content via a portal provided within the room or by an operation to select game content.
[0260] In the above-described embodiment, with reference to FIG. 18, an example was described in which the number of servers may be increased in steps S302 and S304 to increase the number of rooms. The rooms to be increased may be, for example, automatically assigned to each room by a load balancing function when a user enters a room (for example, on the screen of FIG. 9(C), the user only needs to select an area, and the room to enter is automatically determined). The entry process may be performed so that the number of people in each room is distributed evenly. Furthermore, when the number of people in a room exceeds the upper limit (when the room is full, or when a predetermined number of people is reached just before full), the number of servers may be increased to increase the number of rooms. Even if rooms are automatically assigned, entering a room ID in the room ID input field 27 may allow a user to enter the room with that room ID.
[0261] (Server example) The term "server" in the above-described embodiments refers to any server that has the functionality of a server, and includes, for example, a physical server and a server configured using virtualization technology. Servers configured using virtualization technology include, for example, host OS-based virtualization, hypervisor-based virtualization, and container-based virtualization. In addition, all or part of the various servers may be configured on a cloud service (cloud system), which is an infrastructure configured using virtualization technology. For example, different servers may be defined for each function or content.
[0262] For example, in the case of a container-type virtualized server, one container or multiple containers are defined as one server, and control is performed to increase the number of servers being executed. For example, when the login authentication device 101 detects that a specific user, such as a talent, has logged in, it transmits a command to the server management device 105 to increase the number of containers being executed by the login authentication device 101. This increases the number of containers (servers) functioning as the login authentication device 101 (increasing the amount of CPU and memory allocated, which are computer resources), and improves the processing performance of the server.
[0263] (Regarding processing of changes in the amount of information delivered) In the above-described embodiment, an example of reducing the amount of drawing information in the virtual space has been described in relation to the reduction in the amount of information itself when distributed from the distribution server 100 to the user terminal, as explained in steps S403 and S404 of FIG. 19 . The reduced drawing information includes, for example, reducing the number of user avatars. For example, in a room, user avatars located a predetermined distance from the user avatar being operated are displayed, but user avatars located farther than the predetermined distance are not displayed. However, user avatars of specific users such as celebrities or friends (e.g., users being followed) may be displayed even if they are farther than the predetermined distance.
[0264] Note that distribution server 100 may transmit to the user terminal information for each user (information specifying whether or not a user has been selected) that specifies the following users selected in advance by the user and stored in distribution server 100, as well as a list of users currently in the same room, including information for specifying the specific user, and the user terminal may extract the IDs of the following users and the specific user, and request distribution server 100 to display only the avatars of the extracted users as other user avatars. This reduces the processing load on both distribution server 100 and the user terminal.
[0265] In addition, in the distribution information amount variation process, the process for reducing the information requested by the user terminal (e.g., the process for transmitting information for reducing the number of synchronization signal transmissions in step S402 and step S405 in FIG. 19) and the process for reducing the amount of information distributed to the user terminal (e.g., step S403 and step S406 in FIG. 19) may be performed either first or simultaneously. Furthermore, both processes are not limited to being performed first, and may be performed in stages depending on the load situation or a specific user. For example, when the load is at a relatively light level even in a heavy state, or when a specific user with a relatively low evaluation index logs in, a process for reducing the number of synchronizations may be performed. When the load is at a heavy level exceeding a predetermined threshold even in a heavy state, or when a specific user with a high evaluation index logs in, in addition to the process for reducing the number of synchronizations, the amount of information distributed from distribution server 100 to the user terminal may also be reduced.
[0266] <About user devices> The user terminal operated by the specific user in the above-described embodiment may be user terminal 300 or broadcast user terminal 400. Furthermore, the specific user may enter the virtual space from a dedicated application that is different from the applications installed on the user terminals of other users.
[0267] <About the room you will be entering> In the above-described embodiment, an example has been described in which a user can log in to a virtual space from the screens of, for example, Figures 9(A) and (B), and then enter a room by selecting a room corresponding to each area from the screen of Figure 9(C). However, this is not limiting, and a room may be automatically assigned (associated) when a user logs in to a virtual space. Alternatively, in Figure 9(C), a room may be automatically assigned by a load balancing function when an area is selected.
[0268] <Example of execution order of entry notification process and setting change process> 12 and the like in the above-described embodiment, and the setting change processing of distribution server 100 in Fig. 18 and Fig. 19 may be performed either first or simultaneously. For example, when login authentication device 101 illustrated in Fig. 16 performs login authentication processing for a specific user, login authentication device 101 may first transmit a command to server management device 105 to execute the processing, and then transmit information to notification management device 104 to notify that the specific user has logged in.
[0269] Furthermore, either the virtual space providing server augmentation process or the distribution information amount variation process, which are setting variation processes, may be executed, or both may be executed depending on the load situation or the specific user who has entered the room. Alternatively, one may be executed preferentially, and both may be executed depending on the load situation or the specific user who has entered the room. For example, the setting variation process of the distribution server 100 may be executed when a specific user logs in, and an entry notification process may be executed when the specific user enters any room.
[0270] [Software implementation example] The various control blocks of the control unit of a computer such as a server or terminal in the above-described embodiments may be implemented by logic circuits (hardware) formed on an integrated circuit (IC chip) or the like, or by software using a CPU (Central Processing Unit). When implemented by software using a CPU, the computer equipped with the control unit includes a CPU that executes instructions from a program, which is software that implements each function; a ROM (Read Only Memory) or storage device (these are referred to as "recording media") in which the program and various data are recorded so as to be readable by the computer (or CPU); and a RAM (Random Access Memory) in which the program is deployed. The object of the present invention is achieved when the computer (or CPU) reads and executes the program from the recording media. The recording media may be "non-transitory tangible media," such as tapes, disks, cards, semiconductor memories, and programmable logic circuits. The program may also be supplied to the computer via any transmission medium capable of transmitting the program (such as a communication network or broadcast waves). Note that one aspect of the present invention may also be realized in the form of a data signal embedded in a carrier wave, in which the program is embodied by electronic transmission.
[0271] The embodiments disclosed herein should be considered to be illustrative in all respects and not restrictive. The scope of the present invention is defined by the claims, not by the above description, and is intended to include all modifications within the meaning and scope of the claims. [Explanation of symbols]
[0272] 1 communication system, 2 network, 100 distribution server, 200 administrator terminal, 300 user terminal, 400 distribution user terminal, 500 specific user information media management server
Claims
1. A program for causing a computer to perform processing based on a user's entry status into a virtual space, The computer a setting means for performing processing to enable a specific user to individually set whether or not to notify other users of the fact that the specific user has entered the virtual space; When the specific user enters the virtual space and the setting state of the specific user is a setting state for notifying other users, the notification means functions as a notification means that can execute a process for notifying other users that the specific user has entered the virtual space; Users other than the specific user are not required to set whether or not to notify other users of their entry, The other users to be notified of the specific user's entry into the virtual space include users who have not entered the virtual space; When the specific user is in a setting state of notifying other users of his / her entry into the virtual space, the specific user performs a selection operation to notify the other users when entering the virtual space, The notification means is a program that performs processing to notify other users that the specific user has entered the virtual space, when the specific user performs a selection operation to notify the other users when entering the virtual space.
2. An evaluation value is set for the user that varies depending on external evaluations that are evaluations from sources other than the user, The program according to claim 1 , wherein the specific users include users who satisfy a predetermined condition according to the evaluation value.
3. The program according to claim 2 , wherein the predetermined condition includes a condition that is satisfied when the evaluation value is a predetermined value.
4. The program according to claim 1 , wherein the specific users include specific users predetermined by an operator who operates the virtual space.
5. The program according to claim 1 , wherein other users to be notified of the specific user's entry into the virtual space include a user who is currently in the virtual space.
6. The program according to claim 1 , wherein the other users to be notified of the specific user's entry into the virtual space do not include the user currently in the virtual space.
7. The virtual space includes a plurality of types of virtual spaces that provide different contents, The program according to claim 1 , wherein the notification means performs processing for notifying other users every time the specific user enters one of the plurality of types of virtual spaces.
8. The virtual space includes a plurality of types of virtual spaces that provide different contents, The program according to claim 1 , wherein the notification content of the specific user's entry into the virtual space includes information that enables identification of the virtual space into which the specific user has entered from among the plurality of types of virtual spaces.
9. The program of claim 1, wherein the notification means does not perform processing to notify other users that the specific user has entered the virtual space, even if the specific user has entered the virtual space, if a predetermined time has not elapsed since the specific user's last entry into the virtual space.
10. The computer a storage unit configured to store, for each user, a selected specific user previously selected by the user from among the specific users in response to an operation by the user; The program according to claim 1, wherein the notification means, when the user who enters the virtual space is the specific user, performs processing to notify users who have selected the specific user as the selected specific user that the specific user has entered the virtual space.
11. A method for causing a computer to perform processing based on a user's entry status into a virtual space, comprising: performing a process for enabling a specific user to individually set whether or not to notify other users of the fact that the specific user has entered the virtual space; a step of executing a process for notifying other users that the specific user has entered the virtual space when the specific user has entered the virtual space and the setting state of the specific user is a setting state for notifying other users, Users other than the specific user are not required to set whether or not to notify other users of their entry, The other users to be notified of the specific user's entry into the virtual space include users who have not entered the virtual space; When the specific user is in a setting state of notifying other users of his / her entry into the virtual space, the specific user performs a selection operation to notify the other users when entering the virtual space, In the step of enabling the execution of the process for notifying, the method performs a process for notifying the other users that the specific user has entered the virtual space, triggered by the specific user selecting to notify the other users when entering the virtual space.
12. A system including a computer that performs processing based on a user's entry status into a virtual space, a setting means for performing processing to enable a specific user to individually set whether or not to notify other users of the fact that the specific user has entered the virtual space; a notification means for executing a process to notify other users that the specific user has entered the virtual space when the specific user has entered the virtual space and the setting state of the specific user is a setting state for notifying other users, Users other than the specific user are not required to set whether or not to notify other users of their entry, The other users to be notified of the specific user's entry into the virtual space include users who have not entered the virtual space; When the specific user is in a setting state of notifying other users of his / her entry into the virtual space, the specific user performs a selection operation to notify the other users when entering the virtual space, The notification means performs processing to notify other users that the specific user has entered the virtual space, when the specific user performs a selection operation to notify the other users when entering the virtual space.
Citation Information
Patent Citations
Security method for virtual space
JP2007280409A
Collaborative suggestion device, collaborative suggestion method, and computer program
JP2022133148A
Mobile terminal and controlling method thereof
US20110185290A1
Information processing system and information processing method
WO2017068817A1