Method, device, equipment, system and computer program for controlling virtual objects
By displaying live stream resources containing selectable virtual objects on the electronic device and realizing control of the target virtual objects, the problems of low control capabilities and low interaction in the prior art are solved, the interaction and flexibility of the game are improved, and the local game is converted into a multiplayer online game.
Patent Information
- Application Number
- JP2023549550
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-06-21
- Filing Date
- 2022-05-05
- Publication Date
- 2025-04-22
- Estimated Expiration
- 2042-05-05
AI Technical Summary
In the prior art, the audience user has low control ability on virtual game objects, low interactivity, and a single and inflexible control method, which cannot meet the needs of multiplayer online games.
By displaying live stream resources containing selectable virtual objects on the electronic device, and sending a control request to the server after receiving the selection instruction of the audience user, the target virtual object is controlled to perform corresponding operations.
It improves the interaction between viewer users and live broadcast users, provides a variety of flexible virtual object control methods, enhances the appeal and competitiveness of the game, and converts local games into multiplayer online games, reducing implementation costs and improving scalability.
Smart Images

Figure 0007666620000003 
Figure 0007666620000004 
Figure 0007666620000005
Abstract
Description
[Technical field]
[0001] Related Applications This application claims priority to a Chinese patent application filed on June 21, 2021, bearing application number "202110687665.4" and titled "Virtual object control method, device, apparatus, system and readable storage medium," the entire contents of which are incorporated herein by reference.
[0002] The embodiments of the present application relate to the technical field of the Internet, and in particular to a method, an apparatus, a device, a system, and a computer program for controlling a virtual object. [Background technology]
[0003] With the development of Internet technology, more and more users choose to watch game live streaming videos through game live streaming platforms.
[0004] In the related technology, a game client and a live distribution client are installed and executed on a live streamer user's electronic device, and the live streamer user plays a game by calling the game client and live streams the game by calling the live distribution client. During the live stream of the game, a camera corresponding to the live distribution client collects a video of the live streamer user's game screen, creates an audio-video stream, and pushes the audio-video stream to a Content Delivery Network (CDN). In response to a viewer user's attempt to watch a live stream video of the live streamer user playing a game, the CDN pushes the audio-video stream of the live streamer user to the viewer user's electronic device, and a video player installed on the viewer user's electronic device plays the live stream video of the live streamer user playing a game.
[0005] However, since viewer users can only watch live streaming videos of live streamers playing games, and viewer users have little control over virtual objects in the game, the interactivity between viewer users and live streamers is low, and scalability is low. In addition, the control method for virtual objects is single, resulting in low flexibility. Summary of the Invention [Problem to be solved by the invention]
[0006] The embodiments of the present application provide a method, device, apparatus, system, and computer program for controlling a virtual object, which can solve the problems of the related art, that is, the viewer user has low control over the virtual object, the interactivity rate between the viewer user and the live streamer user is low, and the control method for the virtual object is single, resulting in low flexibility and low scalability. The technical means are as follows. [Means for solving the problem]
[0007] In a first aspect, an embodiment of the present application provides a method for controlling a virtual object executed by an electronic device, the method comprising: The method includes the steps of: displaying a first live distribution resource, the first live distribution resource including at least one selectable virtual object and at least one virtual object controlled by a live broadcaster user; sending a control request in response to receiving a selection command for a target virtual object among the at least one selectable virtual object, the control request being a request to control the target virtual object; and controlling the target virtual object to perform a target operation in response to the control command for the target virtual object.
[0008] In a second aspect, an embodiment of the present application provides a method for controlling a virtual object executed by a server, the method comprising: The method includes receiving a control request sent from an electronic device, the control request having an object identifier of a target virtual object and requesting to control the target virtual object, the target virtual object being a selectable virtual object included in a first live streaming resource; obtaining an audio-video data stream address of the target virtual object based on the object identifier of the target virtual object; and sending the audio-video data stream address of the target virtual object to the electronic device.
[0009] In a third aspect, an embodiment of the present application provides a device for controlling a virtual object, the device comprising: A display module for displaying a first live-streaming resource, the first live-streaming resource including at least one selectable virtual object and at least one virtual object controlled by a live-streaming user; a transmission module that transmits a control request in response to receiving a selection command for a target virtual object among the at least one selectable virtual object, the control request requesting to control the target virtual object; and a control module configured to control the target virtual object to execute a target operation in response to a control command for the target virtual object.
[0010] In a fourth aspect, an embodiment of the present application provides a device for controlling a virtual object, the device comprising: A receiving module for receiving a control request sent from an electronic device, the control request having an object identifier of a target virtual object and requesting to control the target virtual object, the target virtual object being a selectable virtual object included in a first live distribution resource; an acquisition module for acquiring an audio-video data stream address of the target virtual object according to an object identifier of the target virtual object; and a sending module for sending an audio-video data stream address of the target virtual object to the electronic device.
[0011] In a fifth aspect, an embodiment of the present application provides an electronic device including a processor and a memory, the memory storing at least one program code, the at least one program code being loaded and executed by the processor to cause the electronic device to realize the method for controlling a virtual object described in the first aspect above.
[0012] In a sixth aspect, an embodiment of the present application provides a server including a processor and a memory, the memory storing at least one program code, the at least one program code being loaded and executed by the processor to cause the server to realize the method for controlling a virtual object described in the second aspect above.
[0013] In a seventh aspect, an embodiment of the present application provides a virtual object control system including an electronic device and a server, the electronic device realizing the virtual object control method described in the first aspect above, and the server realizing the virtual object control method described in the second aspect above.
[0014] In an eighth aspect, there is further provided a non-transitory computer-readable storage medium having stored thereon at least one program code, which, when loaded and executed by a processor, causes a computer to realize the method for controlling a virtual object described in any one of the above.
[0015] In a ninth aspect, there is further provided a computer program or computer program product having at least one computer instruction stored therein, the at least one computer instruction, when loaded and executed by a processor, causing a computer to realize any one of the above-mentioned methods for controlling a virtual object. Effect of the Invention
[0016] In the technical means of the embodiments of the present application, the first live-streaming resource displayed on the electronic device includes selectable virtual objects, thereby increasing the diversity of content displayed on the electronic device, and allowing viewer users to not only watch the first live-streaming resource, but also control the controllable virtual objects in the first live-streaming resource, thereby improving the engagement and activity of viewer users, thereby achieving high interactivity between viewer users and live streamer users of the first live-streaming resource, rich and flexible control methods for the virtual objects, and further improving the attractiveness of the first live-streaming resource to viewer users, and improving the competitiveness of the game corresponding to the first live-streaming resource.
[0017] In addition, the local game can be transformed into a multi-player networking game, i.e., the electronic device displays a first live streaming resource including a selectable virtual object, and realizes control over the target virtual object based on the received selection command and control command, thereby allowing the viewer user to play the game together with the live streamer user, thereby transforming the live streamer user's local game into a multi-player networking game between the viewer user and the live streamer user, thereby enriching the implementation method of playing games using electronic devices, and the implementation cost of such an implementation method is lower than the implementation cost of conventional multi-player games and is highly scalable. [Brief description of the drawings]
[0018] [Figure 1] FIG. 1 is a schematic diagram of an environment for implementing a virtual object control method according to an embodiment of the present application. [Diagram 2] 1 is a flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Diagram 3] FIG. 2 is a schematic diagram of a display of a first live distribution resource according to an embodiment of the present application; [Figure 4] FIG. 2 is a schematic diagram of a display of a selectable virtual object box according to an embodiment of the present application. [Diagram 5] FIG. 13 is a schematic diagram illustrating a display of object information of a target virtual object according to an embodiment of the present application. [Figure 6] FIG. 11 is a schematic diagram showing a display of third presented information according to an embodiment of the present application. [Figure 7] FIG. 2 is a schematic diagram showing a display of first presented information according to an embodiment of the present application. [Figure 8] FIG. 11 is a schematic diagram showing a display of second presented information according to an embodiment of the present application. [Figure 9] FIG. 2 is an architecture diagram of a method for controlling a virtual object according to an embodiment of the present application. [Figure 10] 1 is a flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Figure 11] 1 is a flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Figure 12] 1 is a flowchart of a method for controlling a virtual object according to an embodiment of the present application. [Figure 13] FIG. 1 is a schematic configuration diagram of a virtual object control device according to an embodiment of the present application. [Figure 14] FIG. 1 is a schematic configuration diagram of a virtual object control device according to an embodiment of the present application. [Figure 15] 1 is a schematic diagram illustrating a configuration of an electronic device according to an embodiment of the present application. [Figure 16] FIG. 2 is a schematic configuration diagram of a server according to an embodiment of the present application. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0019] In order to make the objectives, technical means and advantages of the present application clearer, the embodiments of the present application are described in more detail below with reference to the drawings.
[0020] For ease of understanding, first, a number of nouns according to the embodiments of the present application will be explained.
[0021] A virtual scene is a scene that is provided (or displayed) when an application program runs on a terminal, and the virtual scene is a constructed scene in which virtual objects move. The virtual scene may be a 2D virtual scene, a 2.5D virtual scene, a 3D virtual scene, etc. The virtual scene may be a real-world simulation scene, a semi-simulated semi-fictional scene, or even a purely fictional scene. Illustratively, the virtual scene in the embodiment of the present application is a 3D virtual scene.
[0022] A virtual object is an object that can be moved in a virtual scene. The movable object may be a virtual person, a virtual animal, a cartoon character, etc. An interactive object can manipulate a virtual object by tapping a peripheral device part or a touch display. Each virtual object has its own shape and volume in the virtual scene and occupies a part of the space in the virtual scene. Illustratively, when the virtual scene is a three-dimensional virtual scene, the virtual object is a three-dimensional solid model constructed based on animation skeleton technology.
[0023] Cloud gaming, also known as Gaming On Demand, is an online gaming technology based on cloud computing technology. Cloud gaming technology allows thin clients with relatively limited graphics processing and data computing capabilities to run high-quality games. In the cloud gaming scenario, games are run on cloud servers rather than on players' game terminals, and the cloud servers render game scenes into video and audio streams and transmit them to players' game terminals via networks. Players' game terminals do not need to have powerful graphics processing and data computing capabilities, but only need to have basic streaming media playback capabilities and the ability to obtain players' input commands and send them to cloud servers.
[0024] A software development kit (SDK) is generally a set of development tools used by software engineers to create application software for a particular software package, software framework, hardware platform, operating system, etc. The SDK can access any number of cameras and audio monitors in the game and capture the corresponding textures and audio to form an audio-video push stream. The game data stream may include any game data type, such as character ID, real-time position, and other information. The game data stream is a one-way push stream, and game events support two-way communication between the game and the outside, and various interactive actions between the user and the game may be defined as events, including control, voting, and the like. The SDK collects data from the accessed cameras and audio monitors when each cycle ends. The game data stream is also refreshed according to cycles, and different update and push stream frequencies of video, audio, and game data can be set as needed.
[0025] A live streaming platform provides a live, real-time push stream to the viewing audience.
[0026] A video player is software that can play videos stored in the form of digital signals, and also refers to electronic devices that have video playback capabilities. Most video players (except for a few wave files) have a decoder to restore compressed media files, and video players also have a set of built-in frequency conversion and buffering algorithms.
[0027] Overlay content (Overlay) is an interactive floating layer for games such as role-playing games that is overlaid on a video player, and the SDK that provides this function is named Overlay SDK.
[0028] FIG. 1 is a schematic diagram of an implementation environment of a virtual object control method according to an embodiment of the present application. As shown in FIG. 1, the implementation environment includes an electronic device 101 and a server 102.
[0029] The electronic device 101 may be at least one of a smartphone, a game host, a desktop computer, a tablet computer, an e-book reader, an MP3 (Moving Picture Experts Group Audio Layer III) player, an MP4 (Moving Picture Experts Group Audio Layer IV) player, and a notebook computer. The electronic device 101 executes a method for controlling a virtual object according to an embodiment of the present application. The server 102 may be an independent physical server, a server cluster or a distributed system composed of a plurality of physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms. The server 102 may be directly or indirectly connected to the electronic device 101 by wired or wireless communication, and is not limited in the present application.
[0030] Based on the above implementation environment, an embodiment of the present application provides a method for controlling a virtual object, which can be realized by interaction between an electronic device 101 and a server 102 in Fig. 1. The method will be described by taking as an example a flowchart of the method for controlling a virtual object according to an embodiment of the present application shown in Fig. 2. As shown in Fig. 2, the method includes the following steps 201 to 217.
[0031] In step 201, the electronic device displays a first live-streaming resource, the first live-streaming resource including at least one selectable virtual object and at least one virtual object controlled by a live-streaming user.
[0032] In an embodiment of the present application, a first client is installed and executed on an electronic device, and the first client is a live streaming client for live streaming videos or viewing live streaming videos. The first client may be any type of client, and the embodiment of the present application does not limit the type of the first client. The first client has access to the Overlay SDK.
[0033] In one possible embodiment, a viewer user is logged in to the electronic device, and in response to a trigger operation on a first client in the electronic device of the viewer user, a home page of the first client is displayed, and a plurality of live streaming studios are displayed on the home page of the first client, and each live streaming studio has one or more live streamer users. In response to a selection command for any one of the plurality of live streaming studios from the viewer user, the electronic device determines the selected live streaming studio as a target live streaming studio. The electronic device transmits a live streaming resource acquisition request to the server, and the live streaming resource acquisition request has a live streaming studio identifier of the target live streaming studio. The live streaming studio identifier may be a studio number of the live streaming studio, may be a live account of the live streaming studio, or may be any other identifier that can uniquely indicate the target live streaming studio, and the embodiment of the present application is not limited thereto.
[0034] The server receives the live streaming resource acquisition request, analyzes the live streaming resource acquisition request, and acquires a live streaming studio identifier of the target live streaming studio. The server acquires a first live streaming resource of the target live streaming studio based on the live streaming studio identifier of the target live streaming studio. The server returns the first live streaming resource of the target live streaming studio to the electronic device. Exemplarily, the server acquires the first live streaming resource from the game client based on the live streaming studio identifier of the target live streaming studio, and the first live streaming resource is obtained by a live streamer user of the target live streaming studio playing a game with the game client. The game client is a cloud game client, and the electronic device of the live streamer user of the target live streaming studio transmits a control command of the live streamer user to the server in response to the control command of the live streamer user, and the server transfers the control command of the live streamer user to the game client, thereby allowing the live streamer user of the target live streaming studio to play a game with the game client, for example, allowing the live streamer user to control a virtual object. When a live streamer user plays a game in a game client, an audio video, for example, an audio video corresponding to the live streamer user controlling a virtual object, can be generated, and the audio video can be associated with a live streaming studio identifier of a target live streaming studio where the live streamer user is located, so that the server can obtain the audio video based on the live streaming studio identifier and return the audio video to the electronic device of the viewer user as a first live streaming resource. Of course, the audio video can also be returned to the electronic device of the live streamer user, and the electronic device of the live streamer user can call a second client to display the audio video.
[0035] The electronic device receives the first live distribution resource returned from the server, and calls the first client to display the first live distribution resource. The first live distribution resource is an audio video corresponding to a virtual object controlled by a live streamer user, for example, the first live distribution resource is an audio video viewed from a viewing angle of the virtual object controlled by the live streamer user. The first live distribution resource displays a scene screen of a virtual scene in which the virtual object controlled by the live streamer user is located, and the first live distribution resource includes at least one virtual object controlled by the live streamer user and at least one selectable virtual object. In some embodiments, the selectable virtual object is a virtual object that cannot be controlled by the live streamer user and is controlled by AI (Artificial Intelligence). The selectable virtual object is a non-player character (NPC). In some other embodiments, the selectable virtual object may be controlled by the live streamer user. That is, a live streamer user controls at least two virtual objects, and at least one of the at least two virtual objects is a selectable virtual object, and the control of the selectable virtual object can be transferred from the live streamer user to the viewer user. Illustratively, regardless of whether the selectable virtual object can be controlled by the live streamer user, the selectable virtual objects include, but are not limited to, virtual objects such as game monsters and game props, and the embodiment of the present application does not limit the type of the selectable virtual object.
[0036] Illustratively, among the virtual objects included in the first live distribution resource, the selectable virtual object can be changed. For example, in the case where the first live distribution resource includes virtual object A and virtual object B, the selectable virtual object can be first virtual object A and then change to virtual object B. The embodiment of the present application does not limit the factor that changes the selectable virtual object. For example, the selectable virtual object changes according to time. For example, the selectable virtual object in the morning is virtual object A, and the selectable virtual object in the afternoon is virtual object B. Also, for example, the selectable virtual object changes according to the setting of the live user. For example, when the live user sets the selectable virtual object to virtual object A, the selectable virtual object is set to virtual object A. When the live user resets the selectable virtual object to virtual object B, the selectable virtual object is changed from virtual object A to virtual object B. Also, for example, the selectable virtual object changes according to the number of votes of the viewer user. For example, when the number of votes for virtual object A by the viewer user is the largest, the selectable virtual object is set to virtual object A. After the number of votes for virtual object B by viewer users exceeds the number of votes for virtual object A, the selectable virtual object changes from virtual object A to virtual object B.
[0037] FIG. 3 is a schematic diagram of a display of a first live distribution resource according to an embodiment of the present application, in which a virtual object 301 controlled by a live broadcast user, a selectable virtual object 302, a selectable virtual object 303, a selectable virtual object 304, a selectable virtual object 305, and a selectable virtual object 306 are displayed. In one possible embodiment, since the size of the display interface of the electronic device is fixed, a situation may occur in which the first live distribution resource cannot be completely displayed and the selectable virtual resources included in the first live distribution resource cannot be completely displayed. In such a situation, a selectable virtual object display control can be displayed on the display interface of the first live distribution resource, and in response to a trigger operation of the viewer user on the selectable virtual object display control, a selectable virtual object box is displayed on the display interface of the first live distribution resource, and all selectable virtual objects are displayed in the selectable virtual object box. The selectable virtual resource box may be superimposed on top of the first live streaming resource, or the display of the first live streaming resource may be canceled and the selectable virtual resource box may be displayed, and the embodiment of the present application does not limit the display method of the selectable virtual object box.
[0038] FIG. 4 is a schematic diagram of a selectable virtual object box according to an embodiment of the present application. In FIG. 4, a selectable virtual object box is superimposed on a first live distribution resource. In the first live distribution resource in FIG. 4, a selectable virtual object display control 401 is displayed, and in response to a trigger operation on the selectable virtual object display control 401 by a viewer user, a selectable virtual object box 402 is displayed, and all selectable virtual objects are displayed in the selectable virtual object box 402. The selectable virtual objects of the first page displayed in the selectable virtual object box 402 in FIG. 4 are selectable virtual object 1 to selectable virtual object 6, respectively. When there are many selectable virtual objects and they cannot be completely displayed on one page in the selectable virtual object box, a page turn control 403 is further provided, and the selectable virtual objects displayed on each page are all different, and what is displayed in FIG. 4 is the selectable virtual object of the first page, and when the page turn control is triggered, the selectable virtual object of the second page is displayed.
[0039] In one possible embodiment, the electronic device can further obtain a target rendering format, and when displaying the first live-streaming resource, displays the first live-streaming resource in the target rendering format.
[0040] The process of obtaining a target rendering format includes the steps of: obtaining user information of a viewer user; obtaining preference information of the viewer user according to the user information of the viewer user, where the viewer user includes at least one of a user who controls a target virtual object and a user who watches the first live streaming resource; and obtaining a target rendering format according to the preference information of the viewer user. The user information includes, but is not limited to, information such as a user name, a user age, a user gender, and a type of electronic device used by the user.
[0041] Illustratively, the user information is the type of electronic device used by the user, and based on the user information, it is determined that the preference information of the viewer user is an XX type electronic device, and a cartoon image of the XX type electronic device is obtained. When displaying the first live streaming resource, a certain virtual object in the first live streaming resource is replaced with the cartoon image of the XX type electronic device, which can attract the viewer user, improve the viewer user's interest, and popularize the XX type electronic device.
[0042] In step 202, in response to receiving a selection command for a target virtual object of the at least one selectable virtual object, the electronic device transmits an information acquisition request to a server.
[0043] In one possible embodiment, the viewer user can see all the selectable virtual objects, and when the viewer user wants to control a target virtual object among the selectable virtual objects, the viewer user can select the target virtual object. The selection manner may be that the viewer user taps the target virtual object, or that the viewer user selects the target virtual object by voice, and the embodiment of the present application does not limit the selection manner. When the electronic device responds to receiving a selection command for the target virtual object from the viewer user, the electronic device sends an information acquisition request to the server. The information acquisition request has an object identifier of the target virtual object, and the object identifier may be an object name of the target virtual object, an object number of the target virtual object, or other identifiers that can uniquely indicate the target virtual object, and the embodiment of the present application does not limit the same. The information acquisition request is for acquiring object information of the target virtual object. Exemplarily, when the viewer user selects the selectable virtual object 1, the electronic device responds to the selection command of the viewer user and determines the selectable virtual object 1 as the target virtual object, and sends an information acquisition request to the server, and the information acquisition request has the object name of the selectable virtual object 1.
[0044] In step 203, the server receives the information acquisition request sent from the electronic device, and acquires object information of the target virtual object based on the information acquisition request.
[0045] In one possible embodiment, the server stores object information of each selectable virtual object and a correspondence between the object information of the selectable virtual object and the object identifier of the selectable virtual object. After receiving an information acquisition request sent from an electronic device, the server analyzes the information acquisition request and acquires the object identifier of the target virtual object contained in the information acquisition request. Based on the object identifier of the target virtual object and the correspondence between the object information of the selectable virtual object and the object identifier of the selectable virtual object, the server acquires the object information of the target virtual object. The object information includes, but is not limited to, at least one of the following: object name, object avatar, object popularity value, object attribute, object skill, object task, usage time, and object story. Exemplarily, the object name is the name of the object in the game, the object avatar is the display style of the object in the game, the object popularity value indicates the popularity of the object, the object attribute is the type information of the object, the object skill is the ability of the object to acquire and use skills, the object task is the task that needs to be completed in the process of controlling the object, the use time is the one-time control time of the object, or the use time is the time that allows the control of the target virtual object, and the object story is the story about the object in the game. Exemplarily, the target virtual object is a selectable virtual object 1, and the information acquisition request has an object identifier of the selectable virtual object 1. Based on the object identifier of the selectable virtual object 1 and the correspondence between the object information of the selectable virtual object and the object identifier of the selectable virtual object, the object information of the selectable virtual object 1 is acquired, that is, the object information of the target virtual object is acquired. Note that the object information of the selectable virtual object may be set by the game developer and modified by the viewer user who controlled the selectable virtual object.In addition, the object information of the selectable virtual object and the object identifier of the selectable virtual object may be stored in a KEY-VALUE format. For example, the object information of the selectable virtual object is a KEY, and the object identifier of the selectable virtual object is a VALUE. Or, the object identifier of the selectable virtual object is a KEY, and the object information of the selectable virtual object is a VALUE. Of course, the object information of the selectable virtual object and the object identifier of the selectable virtual object may be stored using other storage methods, and the embodiment of the present application is not limited thereto.
[0046] In step 204, the server transmits object information of the target virtual object to the electronic device.
[0047] In one possible embodiment, after the server obtains the object information of the target virtual object, the server can immediately transmit the object information of the target virtual object to the electronic device, and the electronic device can call the first client to display the object information of the target virtual object. Of course, the server can also wait a first time after obtaining the object information of the target virtual object, and transmit the object information of the target virtual object to the electronic device, and the embodiment of the present application does not limit the transmission timing of the object information of the target virtual object. The first time may be any numerical value, and the embodiment of the present application does not limit this. For example, the first time is 10 seconds, and for example, the first time is 30 seconds.
[0048] In step 205, the electronic device receives the object information of the target virtual object sent from the server, and displays the object information of the target virtual object.
[0049] In one possible embodiment, after receiving the object information of the target virtual object sent from the server, the electronic device calls the first client to display the object information of the target virtual object. The display manner may be to superimpose the object information of the target virtual object above the first live distribution resource. The display manner may further be to cancel the display of the first live distribution resource and display the object information of the target virtual object. The embodiment of the present application does not limit the display format of the object information of the target virtual object.
[0050] 5 is a schematic diagram of the display of object information of a target virtual object according to an embodiment of the present application, in which the target virtual object is a selectable virtual object 1, and the display method in FIG. 5 is to superimpose and display the object information of the target virtual object above the first live distribution resource. The object information display control 501 in FIG. 5 displays the object information of the selectable virtual object 1, and the object avatar display control 502 displays the object avatar of the selectable virtual object 1. The object name of the selectable virtual object 1 is Object 1, the object popularity value is 2813321, the object attribute is Squirrel, the object skills are Bite, Jump, and Enchant, the object task is to ensure one's own survival within the usage time and defeat the player character, the usage time is 60 seconds, and the object story is XXXXXXXXXXXXXXX.
[0051] In step 206, in response to receiving the confirmation command for the object information of the target virtual object, the electronic device sends a control request to the server.
[0052] In one possible embodiment, the object information display control 501 further includes a control control 503, for example, the control control 503 in FIG. 5 is a "play" control. The electronic device displays the object information of the target virtual object, so that the viewer user can view the object information of the target virtual object. If the viewer user still decides to control the target virtual object after viewing the object information of the target virtual object, the viewer user can select the control control 503. After the viewer user selects the control control 503, the electronic device sends a control request to the server, the control request having the object identifier of the target virtual object and requesting to control the target virtual object. In one possible embodiment, the object information display control 501 further includes a close control 504, and if the viewer user does not want to control the target virtual object after viewing the object information of the target virtual object, the viewer user can cancel the display of the object information of the target virtual object by selecting the close control 504. After the viewer user selects the close control 504, the electronic device cancels the display of the object information of the target virtual object and redisplays the selectable virtual object boxes, i.e., redisplays all selectable virtual objects, so that the viewer user may redetermine the target virtual object.
[0053] In addition, when the viewer user re-determines the target virtual object, the process of acquiring the object information of the re-determined target virtual object is the same as the process of acquiring the object information of the target virtual object, so the description thereof will be omitted here.
[0054] In step 207, the server receives the control request sent from the electronic device and obtains the audio-video data stream address of the target virtual object.
[0055] In one possible embodiment, the control request has an object identifier of a target virtual object, and after receiving the control request, the server parses the control request to obtain the object identifier of the target virtual object carried in the control request. Based on the object identifier of the target virtual object, determine an object state of the target virtual object. The object state includes an uncontrolled state and a controlled state. The uncontrolled state indicates that the target virtual object is not controlled by other audience users, i.e., the audience user logged in to the electronic device can control the target virtual object. The controlled state indicates that the target virtual object is controlled by other audience users, i.e., the audience user logged in to the electronic device cannot control the target virtual object.
[0056] In one possible embodiment, when responding that the object state of the target virtual object is in an uncontrolled state, obtain the audio-video data stream address of the target virtual object. Obtain the audio-video data stream address of the target virtual object in the following two implementation manners:
[0057] The first implementation is to obtain the audio data stream and the video data stream of the target virtual object based on the object identifier of the target virtual object, and further obtain the audio video data stream address of the target virtual object.
[0058] In one possible embodiment, the server stores audio data streams and video data streams of all selectable virtual objects, a correspondence between object identifiers and audio data streams, and a correspondence between object identifiers and video data streams. In response to the object state of the target virtual object being in an uncontrolled state, obtain an audio data stream of the target virtual object based on the object identifier of the target virtual object and the correspondence between the object identifier and the audio data stream. Obtain a video data stream of the target virtual object based on the object identifier of the target virtual object and the correspondence between the object identifier and the video data stream. Process the audio data stream of the target virtual object and the video data stream of the target virtual object to obtain the audio video data stream of the target virtual object, and further determine an audio video data stream address of the target virtual object. The process of processing the audio data stream of the target virtual object and the video data stream of the target virtual object is to obtain the audio video data stream of the target virtual object by encoding, mixing, and transcoding the audio data stream of the target virtual object and the video data stream of the target virtual object.
[0059] The implementation method 2 is to obtain the audio-video data stream address of the target virtual object according to the object identifier of the target virtual object.
[0060] In one possible embodiment, the server stores the audio-video data stream addresses of all selectable virtual objects and the correspondence between the object identifiers of the selectable virtual objects and the audio-video data stream addresses. When responding that the object state of the target virtual object is in an uncontrolled state, obtain the audio-video data stream address of the target virtual object based on the object identifier of the target virtual object and the correspondence between the object identifiers of the selectable virtual objects and the audio-video data stream addresses. Note that the audio-video data stream address is the address of the audio-video data stream, and the format of the audio-video data stream address may be a RTMP (Real Time Messaging Protocol) format, a RTSP (Real Time Streaming Protocol) format, an HLP (HTTP Live Streaming) format, or other formats, and the embodiment of the present application is not limited thereto. Note that any of the above implementation methods can be selected to obtain the audio-video data stream address of the target virtual object, and the embodiment of the present application is not limited thereto.
[0061] In one possible embodiment, the server receives a control request sent from the electronic device, analyzes the control request, and obtains an object identifier of a target virtual object carried in the control request; determines an object state of the target virtual object based on the object identifier of the target virtual object; and, in response to the object state of the target virtual object being in an uncontrolled state, passes control of the target virtual object to an audience user and sends third presentation information to the electronic device, thereby presenting the audience user of the electronic device to control the target virtual object; and displays the third presentation information and the first live-streaming resource on a display interface of the electronic device, so that the audience user logged in to the electronic device can control the target virtual object based on the first live-streaming resource.
[0062] In step 208, the server sends the audio-video data stream address of the target virtual object to the electronic device.
[0063] In one possible embodiment, after obtaining the audio-video data stream address of the target virtual object, the server may immediately send the audio-video data stream address of the target virtual object to the electronic device, or may wait a second time before sending the audio-video data stream address of the target virtual object to the electronic device, and the embodiment of the present application does not limit the timing of sending the audio-video data stream address of the target virtual object.
[0064] The second time may be any time, and the embodiment of the present application is not limited thereto. Illustratively, the second time is 10 seconds. Note that, the shorter the second time, the shorter the delay of displaying the second live streaming resource on the electronic device, and the second time may or may not match the first time, and the embodiment of the present application is not limited thereto.
[0065] In one possible embodiment, after the server sends the audio-video data stream address of the target virtual object to the electronic device, it can further send third presentation information to the electronic device. The third presentation information indicates that the viewer user who logs in to the electronic device can control the target virtual object. Illustratively, the content of the third presentation information is "control rights of the target virtual object have been obtained." The third presentation information may further include the usage time of the target virtual object, for example, the content of the third presentation information is "control rights of the target virtual object have been obtained. The valid time is 60 seconds." Of course, the content of the third presentation information may be other content, and the embodiment of the present application does not limit the content of the third presentation information.
[0066] In one possible embodiment, before sending the audio-video data stream address of the target virtual object to the electronic device, the object state of the target virtual object is in an uncontrolled state, and the server needs to further adjust the object state of the target virtual object after sending the audio-video data stream address of the target virtual object to the electronic device, and by adjusting the object state of the target virtual object to a controlled state, a situation in which two or more audience users control one target virtual object is prevented. In one possible embodiment, in response to the object state of the target virtual object being in a controlled state, the controlled state indicates that the target virtual object is controlled by another audience user, that is, the audience user logged in to the electronic device cannot control the target virtual object. Thus, the server sends first presentation information to the electronic device, and the first presentation information indicates that the target virtual object is a virtual object controlled by another audience user. The content of the first presentation information is "The target virtual object is being played by another audience. Please try again later." Of course, the first presentation information may also be other content, and the embodiment of the present application is not limited thereto.
[0067] In step 209, the electronic device receives the audio-video data stream address of the target virtual object sent from the server, and displays the second live distribution resource according to the audio-video data stream address of the target virtual object.
[0068] In one possible embodiment, the electronic device receives an audio-video data stream address of a target virtual object sent from a server, and obtains an audio-video data stream of the target virtual object according to the audio-video data stream address of the target virtual object, and calls a first client to play a second live-streaming resource corresponding to the audio-video data stream of the target virtual object, where the second live-streaming resource is an audio-video corresponding to the target virtual object, for example, the second live-streaming resource is an audio-video viewed from a viewing angle of the target virtual object.
[0069] In one possible embodiment, the second live streaming resource may be superimposed on the first live streaming resource, the second live streaming resource may replace the first live streaming resource (only the second live streaming resource is displayed, and the first live streaming resource is not displayed), or the first live streaming resource and the second live streaming resource may be displayed simultaneously. In one possible embodiment, for the method of simultaneously displaying the first live streaming resource and the second live streaming resource, the display interface of the electronic device is divided into two display areas, one display area displays the first live streaming resource, and the other display area displays the second live streaming resource. Note that the sizes of the display areas of the first live streaming resource and the second live streaming resource may be the same or different, and the embodiment of the present application is not limited thereto.
[0070] In one possible embodiment, the electronic device can further display the second live streaming resource in a target rendering format, and the acquisition process of the target rendering format is as shown in step 201 above, so the description is omitted here.
[0071] In one possible embodiment, after receiving the audio-video data stream address of the target virtual object, the electronic device receives the third presentation information sent from the server, calls the first client to display the second live streaming resource, and then superimposes and displays the third presentation information above the second live streaming resource. FIG. 6 is a schematic diagram of the display of the third presentation information according to an embodiment of the present application, in which the second live streaming resource replaces the first live streaming resource in FIG. 6, that is, only the second live streaming resource is displayed, and the first live streaming resource is not displayed. The control 601 in FIG. 6 is the third presentation information display box, and the third presentation information displayed in FIG. 6 is "The control of the target virtual object has been obtained." The second live streaming resource is displayed below the third presentation information. In one possible embodiment, if the object state of the target virtual object is in a controlled state, the server sends first presentation information to the electronic device, and after the electronic device receives the first presentation information, it calls the first client to display the first presentation information, and the first presentation information is superimposed and displayed above the first live distribution resource, thus notifying the viewer user that the target virtual object cannot be controlled while not affecting the viewer user's viewing of the first live distribution resource. FIG. 7 is a display schematic diagram of the first presentation information according to an embodiment of the present application. The control 701 in FIG. 7 is a first presentation information display box, and the first presentation information displayed in FIG. 7 is "The target virtual object is being played by other viewers. Please try again later."
[0072] In step 210, the electronic device receives a control command for a target virtual object.
[0073] In one possible embodiment, the electronic device displays a second live-streaming resource, and a viewer user logged in to the electronic device can control a target virtual object in the second live-streaming resource based on the second live-streaming resource, and the viewer user may control the target virtual object by dragging the target virtual object, or may control the target virtual object by dragging a skill key, or may control the target virtual object in other ways, and the embodiment of the present application is not limited thereto. In some embodiments, the skill key is a physical key, for example a physical joystick or button. In some other embodiments, the skill key is a virtual key, for example a control displayed on the second live-streaming resource. Illustratively, a first skill key and a second skill key are displayed on the second live-streaming resource. The first skill key is a movement type skill key, and when the viewer user drags the first skill key, the control command for the target virtual object obtained by the electronic device is a movement command. The second skill key is an activation type skill key, and when the viewer user drags the second skill key, the control command for the target virtual object obtained by the electronic device is an activation command.
[0074] In step 211, the electronic device sends a control command to the server.
[0075] In one possible embodiment, the electronic device may transmit the control command to the server immediately after obtaining the control command, or may transmit the control command to the server after waiting for a third time, and the embodiment of the present application does not limit the timing of transmitting the control command. The third time may be any numerical value, and the embodiment of the present application does not limit this. The third time may be the same as the first time or the second time, or may not be the same as the first time or the second time.
[0076] In step 212, the server receives the control command sent from the electronic device and sends the control command to the game client.
[0077] In one possible embodiment, the game client accesses the cloud gaming interaction SDK, and the server sends a control command to the game client, where the control command instructs the game client to control the target virtual object to perform a target operation. The second live streaming resource can display a process in which the game client controls the target virtual object to perform the target operation. The target operation is an operation corresponding to the control command. For example, if the control command is to turn left, the target operation is to control the target virtual object to turn left.
[0078] In one possible embodiment, after receiving the control command, the game client controls the target virtual object according to the control command to perform a target operation corresponding to the control command. Illustratively, if the control command is to move two steps to the left, the game client controls the target virtual object to move two steps to the left, and the target virtual object displayed on the second live streaming resource of the electronic device moves two steps to the left. Also, for example, if the control command is to bite the player character, the game client controls the target virtual object to bite the player character, and displays the process of the target virtual object biting the player character on the second live streaming resource of the electronic device.
[0079] In step 213, in response to the difference between the control time of the target virtual object and the use time of the target virtual object being equal to or less than the time threshold, second presentation information is transmitted to the electronic device.
[0080] The control time is the time when the target virtual object is controlled, and the use time is the time when the target virtual object is allowed to be controlled. In one possible embodiment, the object information of the target virtual object includes the use time of the target virtual object, and in response to the difference between the control time of the target virtual object of the viewer user logged in to the electronic device and the use time of the target virtual object being equal to or less than the time threshold, the server transmits second presentation information to the electronic device, and the second presentation information instructs that the difference between the control time of the target virtual object and the use time of the target virtual object is equal to or less than the time threshold, and presents to the viewer user logged in to the electronic device that the target virtual object cannot be continued to be controlled. Illustratively, the content of the second presentation information is "The control right to the target virtual object has expired." Of course, the content of the second presentation information may be other content, and the embodiment of the present application is not limited thereto. The embodiment of the present application does not limit the value of the time threshold, and the value of the time threshold can be set according to experience or actual needs. For example, if the value of the time threshold is set to zero, the difference between the control time of the target virtual object and the use time of the target virtual object is equal to zero, i.e., in response to the control time of the target virtual object matching the use time of the target virtual object, the server transmits second presentation information to the electronic device.
[0081] In one possible embodiment, after sending the second presentation information to the electronic device, the server needs to further adjust the object state of the target virtual object, and by adjusting the object state of the target virtual object to an uncontrolled state, other audience users can control the target virtual object.
[0082] In step 214, the electronic device receives the second presentation information transmitted from the server and displays the second presentation information.
[0083] In one possible embodiment, after receiving the second presentation information sent from the server, the electronic device superimposes and displays the second presentation information above the second live streaming resource, as shown in FIG. 8, which is a schematic diagram of the display of the second presentation information according to an embodiment of the present application, where the control 801 in FIG. 8 is a second presentation information display box, and the second presentation information displayed in FIG. 8 is “Control rights to the target virtual object have expired.”
[0084] In one possible embodiment, the second presentation information display box can further display a continue control control 802 and a confirmation control 803. The continue control control 802 is for requesting to continue to control the target virtual object, and the confirmation control 803 is for confirming not to continue to control the target virtual object. If the viewer user wants to continue to control the target virtual object, the viewer user selects the continue control control 802 and further sends a continue control request to the server, where the continue control request has an object identifier of the target virtual object. After receiving the continue control request, the server analyzes the continue control request and obtains the object identifier of the target virtual object carried in the continue control request. Based on the object identifier of the target virtual object, the server determines the object state of the target virtual object. If the object state of the target virtual object is in an uncontrolled state, the server obtains an audio-video data stream address of the target virtual object and returns the audio-video data stream address of the target virtual object to the electronic device, so that the viewer user logged in to the electronic device can continue to control the target virtual object. If the object state of the target virtual object is in a controlled state, the server returns the first presentation information to the electronic device to present to the viewer user logged in to the electronic device that the target virtual object cannot be temporarily controlled.
[0085] At step 215, in response to completing the object task of the goal virtual object within the usage time of the goal virtual object, the server obtains a bonus resource corresponding to the goal virtual object.
[0086] In one possible embodiment, since the object information of the target virtual object includes the use time of the target virtual object and the object task of the target virtual object, in order to encourage the viewer user to continue to control the target virtual object, thereby improving the appeal of the game to the viewer user, and further improving the interaction between the viewer user and the live streamer user, the server can grant a bonus to the viewer user of the electronic device if the viewer user who is logged in to the electronic device completes the object task of the target virtual object within the use time of the target virtual object. The server stores the bonus resources of all selectable virtual objects and the correspondence between the object identifiers and the bonus resources. In response to completing the object task of the target virtual object within the use time of the target virtual object, the server obtains the object identifier of the target virtual object. Based on the object identifier of the target virtual object and the correspondence between the object identifiers and the bonus resources, the server determines the bonus resource corresponding to the target virtual object. The bonus resource may be experience points, may be vouchers, or may be gold coins, and the embodiment of the present application does not limit the form of the bonus resource.
[0087] For example, the following Table 1 shows a table of the correspondence between object identifiers and bonus resources according to an embodiment of the present application.
[0088] [Table 1] In the above Table 1, when the object identifier is a selectable virtual object 1, the corresponding bonus resource is to increase the experience value by 200, when the object identifier is a selectable virtual object 2, the corresponding bonus resource is to increase the gold coin by 100, and when the object identifier is a selectable virtual object 3, the corresponding bonus resource is a 50 yuan voucher. It should be noted that the above Table 1 is merely an exemplary description of the object identifier and the bonus resource according to the embodiment of the present application, and is not intended to limit the object identifier and the bonus resource. The bonus resource corresponding to each selectable virtual object is set by the game developer or modified by the viewer user who controlled the selectable virtual object, and the embodiment of the present application does not limit the bonus resource corresponding to each selectable virtual object. Illustratively, the target virtual object is a selectable virtual object 1, and it is determined based on the above Table 1 that the bonus resource corresponding to the target virtual object is 200 experience value.
[0089] In one possible embodiment, when the viewer user who logs in to the electronic device does not complete the object task of the target virtual object within the use time of the target virtual object, the server can further obtain a penalty resource corresponding to the target virtual object. The server stores the penalty resource of the selectable virtual object and the correspondence between the object identifier and the penalty resource. When the object task of the target virtual object is not completed within the use time of the target virtual object, the server determines the penalty resource corresponding to the target virtual object based on the object identifier of the target virtual object and the correspondence between the object identifier and the penalty resource. The penalty resource may be experience points, gold coins, or a reduction in level, and the embodiment of the present application does not limit the form of the penalty resource.
[0090] Table 2 below shows a table of the correspondence between object identifiers and penalty resources according to an embodiment of the present application.
[0091] [Table 2] In the above Table 2, when the object identifier is a selectable virtual object 1, the corresponding penalty resource is to reduce the experience value by 200, when the object identifier is a selectable virtual object 2, the corresponding penalty resource is to reduce the gold coins by 100, and when the object identifier is a selectable virtual object 3, the corresponding penalty resource is to lower the level by one level. Note that the above Table 2 is merely an exemplary description of the object identifiers and penalty resources according to the embodiment of the present application, and is not intended to limit the object identifiers and penalty resources. The penalty resource corresponding to each selectable virtual object is set by the game developer or modified by the viewer user who controlled the selectable virtual object, and the embodiment of the present application does not limit the penalty resource corresponding to each selectable virtual object.
[0092] In step 216, the server transmits bonus resources corresponding to the target virtual object to the electronic device.
[0093] In one possible embodiment, after the server obtains the bonus resource corresponding to the target virtual object, the electronic device updates the account of the viewer user logged in to the electronic device based on the bonus resource corresponding to the target virtual object by sending the bonus resource corresponding to the target virtual object to the electronic device. In one possible embodiment, after the server obtains the penalty resource corresponding to the target virtual object, the electronic device updates the account of the viewer user logged in to the electronic device based on the penalty resource corresponding to the target virtual object by sending the penalty resource corresponding to the target virtual object to the electronic device.
[0094] In step 217, the electronic device receives the bonus resources corresponding to the target virtual object sent from the server and updates the viewer user's account based on the bonus resources corresponding to the target virtual object.
[0095] In one possible embodiment, the electronic device receives bonus resources corresponding to the target virtual object transmitted from the server and adds the bonus resources corresponding to the target virtual object to an account of a viewer user logged into the electronic device.
[0096] Exemplarily, if the experience value of the viewer user is 3000 and the bonus resource corresponding to the target virtual object is 200 experience value, after the electronic device updates the account of the viewer user, the experience value of the viewer user becomes 3200. In one possible embodiment, the electronic device receives the penalty resource corresponding to the target virtual object sent from the server, and updates the account of the viewer user logged in to the electronic device based on the penalty resource corresponding to the target virtual object. Note that the above steps 202 to 205, steps 207 to 209, and steps 211 to 217 are optional steps in the embodiment of the present application.
[0097] In the above method, the first live-streaming resource displayed on the electronic device includes selectable virtual objects, thereby increasing the diversity of content displayed on the electronic device, and allowing viewer users to not only watch the first live-streaming resource, but also control the controllable virtual objects in the first live-streaming resource, thereby improving the engagement and activeness of viewer users, thereby achieving high interactivity between viewer users and live streamer users of the first live-streaming resource, rich and flexible control methods for the virtual objects, and further improving the attractiveness of the first live-streaming resource to viewer users, and improving the competitiveness of the game corresponding to the first live-streaming resource. In addition, the local game can be transformed into a multi-player networking game, i.e., the electronic device displays a first live streaming resource including a selectable virtual object, and realizes control over the target virtual object based on the received selection command and control command, thereby allowing the viewer user to play the game together with the live streamer user, thereby transforming the live streamer user's local game into a multi-player networking game between the viewer user and the live streamer user, thereby enriching the implementation method of playing games using electronic devices, and the implementation cost of such an implementation method is lower than the implementation cost of conventional multi-player games and is highly scalable.
[0098] In addition, when the viewer user controls the target virtual object, a second live streaming resource is further displayed, and the second live streaming resource is an audio video corresponding to the target virtual object, which helps the viewer user to better control the target virtual object.
[0099] 9 is an architecture diagram of a method for controlling a virtual object according to an embodiment of the present application. The overall flow is to first integrate a cloud game interaction software development kit (cloud game interaction SDK) into a game client, and then access the cloud game interaction SDK to realize logic such as audio-video data collection, game data synchronization (object information, object state), and game event processing (e.g., object control command). A live streamer user plays a game through a game client. The cloud game interaction SDK responds to the server with audio data, video data, game data, and game events. The server processes the audio and video through an audio-video processing service to obtain an audio-video data stream, and sends the audio-video data stream to a streaming media service and an electronic device.
[0100] When the server transmits the audio-video data stream to a streaming media service, the electronic device needs to obtain the audio-video data stream from the streaming media service, so the electronic device takes a long time to obtain the audio-video data stream. When the server transmits the audio-video data stream directly to the electronic device, the electronic device takes a short time to obtain the audio-video data stream. The electronic device plays audio-video corresponding to the audio-video data stream by calling a first client (video player). An overlay content software development kit (Overlay SDK) for cloud gaming is integrated in the electronic device, and the Overlay SDK receives game data and displays it in an overlay manner on the video player, and further transmits game events to the server and receives responses to the game events from the server.
[0101] The cloud game interaction SDK portion includes an audio-video module, a game data module, and a game event module. For example, the audio-video module includes a video module and an audio module shown in FIG. 9. The audio-video module is for capturing textures and audio in a game to form an audio-video data stream. The cloud game interaction SDK can access any number of cameras and audio monitors in a game and capture corresponding textures and audio to form an audio-video data stream. The cloud game interaction SDK collects data from the accessed cameras and audio monitors according to a certain frequency, for example, the frequency is determined based on a rendering loop, for example, textures and audio may be captured when rendering of each frame is completed, or the frequency may be customized.
[0102] The game data module obtains game data, including but not limited to object information of selectable virtual objects, and transmits the game data to the electronic device, where the game data stream is a one-way push stream similar to an audio-video data stream. The refresh frequency of the game data is determined based on the game loop, for example, refreshing the game data once in each game loop period. The game loop period can be determined based on the way of playing the game, and is not limited here.
[0103] The game event module receives control events from the server and the electronic device, and various interactive actions between the viewer user and the game may be defined as game events. The game event module supports two-way communication between the game client and the outside.
[0104] FIG. 10 is a flowchart of a method for controlling a virtual object according to an embodiment of the present application. In FIG. 10, an overlay content software development kit (Overlay SDK) is accessed in an electronic device, a server includes a game event processing service and an audio-video processing service, and a cloud game interaction software development kit (SDK) is accessed in a game client, and the game client includes game content.
[0105] The Overlay SDK sends a control request to the game event processing service, where the control request has an object identifier of the target virtual object and requests to control the target virtual object. The game event processing service receives the control request, analyzes the control request, obtains the object identifier of the target virtual object, and determines an object state of the target virtual object based on the object identifier of the target virtual object. If the object state of the target virtual object is an uncontrolled state, the game event processing service sends a control request to the audio video processing service. The audio video processing service receives the control request, and obtains an audio video data stream address corresponding to the target virtual object based on the object identifier of the target virtual object carried in the control request. The audio video processing service returns the audio video data stream address of the target virtual object to the game event processing service, and the game event processing service returns the audio video data stream address of the target virtual object to the Overlay SDK. The game event processing service also adjusts the object state of the target virtual object to a controlled state. The Overlay SDK obtains the control command, transmits the control command to the game event processing service, and the game event processing service transmits the control command to the cloud game interaction SDK, which then transmits the control command to the game content, and the game content executes an operation corresponding to the control command. If the difference between the control time of the target virtual object and the use time of the target virtual object is equal to or less than the time threshold, the game event processing service presents that the target virtual object cannot be continued to be controlled by transmitting second presentation information to the Overlay SDK. The game event processing service adjusts the object state of the target virtual object to an uncontrolled state, thereby allowing other viewer users to control the target virtual object.
[0106] FIG. 11 is a flowchart of a method for controlling a virtual object according to an embodiment of the present application. The method can be executed by the electronic device 101 in FIG. 1. As shown in FIG. 11, the method includes the following steps 1101 to 1103.
[0107] In step 1101, a first live distribution resource is displayed, the first live distribution resource including at least one selectable virtual object and at least one virtual object controlled by a live broadcast user.
[0108] In one possible embodiment, the process of displaying the first live-streaming resource is consistent with the process of step 201 above, so the description is omitted here.
[0109] In step 1102, in response to receiving a selection command for a target virtual object of the at least one selectable virtual object, a control request is sent, the control request requesting to control the target virtual object.
[0110] In one possible embodiment, the process of sending a control request is consistent with the process of steps 202 to 206 above, and therefore will not be described here.
[0111] In step 1103, in response to the control command for the target virtual object, the target virtual object is controlled to execute the target operation.
[0112] In one possible embodiment, the process of controlling the target virtual object to perform the target operation is consistent with the process of steps 210 to 212 above, and therefore will not be described here.
[0113] The above method displays selectable virtual objects in the first live streaming resource, so that the viewer user can not only watch the first live streaming resource, but also increase the variety of content displayed on the electronic device, and can control the controllable virtual objects in the first live streaming resource, thereby improving the engagement and activity of the viewer user, thereby providing high interactivity between the viewer user and the live streamer user of the first live streaming resource, rich control methods for the virtual objects, high flexibility, and further improving the appeal of the first live streaming resource to the viewer user, and improving the competitiveness of the game corresponding to the first live streaming resource. In addition, the method can turn a local game into a multi-player networking game, enriching the implementation methods for playing games using electronic devices, lowering the implementation cost and improving scalability compared to conventional multi-player games.
[0114] FIG. 12 is a flowchart of a method for controlling a virtual object according to an embodiment of the present application. The method can be executed by the server 102 in FIG. 1. As shown in FIG. 12, the method includes the following steps 1201 to 1203.
[0115] In step 1201, a control request sent from an electronic device is received, the control request having an object identifier of a target virtual object and requesting to control the target virtual object, the target virtual object being a selectable virtual object included in a first live distribution resource.
[0116] In one possible embodiment, the process of receiving the control request sent from the electronic device is consistent with the process of step 207 above, so it is not described here.
[0117] In step 1202, an audio-video data stream address of the target virtual object is obtained based on the object identifier of the target virtual object.
[0118] In one possible embodiment, the process of obtaining the audio-video data stream address of the target virtual object is consistent with that of step 207 above, so it is not described here.
[0119] In step 1203, the audio-video data stream address of the target virtual object is sent to the electronic device.
[0120] In one possible embodiment, the process of sending the audio-video data stream address of the target virtual object to the electronic device is consistent with the process of step 208 above, so it is not described here.
[0121] The above method obtains an audio-video data stream address of a target virtual object based on a control request, and further sends the audio-video data stream address to an electronic device, so that a viewer user logged in to the electronic device can control the target virtual object based on the audio-video data stream address, and the control manner for the virtual object is rich and flexible, so that the viewer user not only watches the first live-streaming resource, but also increases the diversity of the content displayed on the electronic device, and further controls the target virtual object in the first live-streaming resource, thereby improving the engagement and activeness of the viewer user, thereby increasing the interactivity between the viewer user and the live-streaming user of the first live-streaming resource, and further improving the attractiveness of the first live-streaming resource to the viewer user, and improving the competitiveness of the game corresponding to the first live-streaming resource.
[0122] FIG. 13 is a schematic diagram of a virtual object control device according to an embodiment of the present application. As shown in FIG. 13, the device includes: A display module 1301 for displaying a first live distribution resource, the first live distribution resource including at least one selectable virtual object and at least one virtual object controlled by a live broadcast user; a transmission module 1302 for transmitting a control request in response to receiving a selection command for a target virtual object of the at least one selectable virtual object, the control request being a request to control the target virtual object; and a control module 1303 configured to control the target virtual object to execute the target operation in response to a control command for the target virtual object.
[0123] In one possible embodiment, the device further includes an acquisition module that acquires object information of the target virtual object in response to receiving a selection command for a target virtual object among the at least one selectable virtual object; The display module 1301 further displays object information of the target virtual object; The sending module 1302 sends a control request to the server in response to receiving the confirmation command for the object information of the target virtual object, where the control request has the object identifier of the target virtual object.
[0124] In one possible embodiment, the sending module 1302, in response to receiving a selection command for a target virtual object among the at least one selectable virtual object, sends an information acquisition request to the server, the information acquisition request having an object identifier of the target virtual object and acquiring object information of the target virtual object; The apparatus further includes a receiving module for receiving object information of the target virtual object returned by the server based on the information acquisition request.
[0125] In one possible embodiment, in response to a control command for a target virtual object, the transmission module 1302 transmits a control command to a server and forwards the control command by the server to a game client, the control command instructing the game client to control the target virtual object to perform a target operation.
[0126] In one possible embodiment, the display module 1301 sends a live streaming resource acquisition request to a server, the live streaming resource acquisition request having a live streaming studio identifier of a target live streaming studio, receives the first live streaming resource returned from the server, and displays the first live streaming resource, which is acquired by the server from a game client based on the live streaming studio identifier of the target live streaming studio and is obtained by a live streamer user of the target live streaming studio playing a game through the game client.
[0127] In one possible embodiment, the receiving module further receives an audio-video data stream address of the target virtual object returned from the server; The display module 1301 further displays a second live-streaming resource according to the audio-video data stream address of the target virtual object, where the second live-streaming resource is an audio-video corresponding to the target virtual object.
[0128] In one possible embodiment, the selectable virtual objects are artificial intelligence controlled virtual objects.
[0129] In one possible embodiment, the receiving module further receives first presentation information returned from the server, the first presentation information indicating that the target virtual object is a virtual object controlled by another audience user; The display module 1301 further displays the first presentation information.
[0130] In one possible embodiment, the acquisition module further acquires preference information of a viewer user according to user information of the viewer user, the viewer user including at least one of a user who controls a target virtual object and a user who watches the first live distribution resource; and acquires a target rendering format according to the preference information of the viewer user; The display module 1301 displays the first live-streaming resource in a target rendering format.
[0131] In one possible embodiment, the receiving module further receives second presentation information sent from the server, the second presentation information indicating that a difference between a control time of the target virtual object and a usage time of the target virtual object is less than or equal to a time threshold, the control time being the time during which the target virtual object is controlled and the usage time being the time during which control of the target virtual object is enabled, and the display module 1301 further displays the second presentation information.
[0132] In one possible embodiment, the selectable virtual objects cannot be controlled by the live user.
[0133] The above device displays selectable virtual objects in the first live distribution resource, thereby allowing the viewer user to not only view the first live distribution resource but also control the controllable virtual objects in the first live distribution resource, thereby improving the engagement and activity of the viewer user, thereby increasing the interactivity between the viewer user and the live streamer user of the first live distribution resource, and further increasing the attractiveness of the first live distribution resource to the viewer user, thereby improving the competitiveness of the game corresponding to the first live distribution resource. In addition, the device can turn a local game into a networking game for multiple players, which has a lower realization cost and high scalability than conventional games for multiple players. In addition, the device provides a wide range of control methods for virtual objects, a high level of flexibility, and a wide range of realization methods for playing games using electronic devices.
[0134] FIG. 14 is a schematic diagram of a virtual object control device according to an embodiment of the present application. As shown in FIG. 14, the device includes: A receiving module 1401 for receiving a control request sent from an electronic device, the control request having an object identifier of a target virtual object and requesting to control the target virtual object, the target virtual object being a selectable virtual object included in a first live distribution resource; a obtaining module 1402 for obtaining an audio-video data stream address of a target virtual object based on an object identifier of the target virtual object; and a sending module 1403 for sending the audio-video data stream address of the target virtual object to the electronic device.
[0135] In one possible embodiment, the apparatus further includes a determination module for determining an object state of the target virtual object based on an object identifier of the target virtual object; The obtaining module 1402 obtains an audio-video data stream address of the target virtual object in response to the object state of the target virtual object being in an uncontrolled state.
[0136] In one possible embodiment, the receiving module 1401 further receives a control command sent from an electronic device; The sending module 1403 further sends a control command to the game client, where the control command instructs the game client to control the target virtual object to perform the target operation.
[0137] In one possible embodiment, the receiving module 1401 further receives a live streaming resource acquisition request sent from the electronic device, the live streaming resource acquisition request having a live streaming studio identifier of a target live streaming studio, analyzes the live streaming resource acquisition request to obtain the live streaming studio identifier of the target live streaming studio, obtains a first live streaming resource from a game client based on the live streaming studio identifier of the target live streaming studio, and returns the first live streaming resource to the electronic device, where the first live streaming resource is obtained by a live streamer user of the target live streaming studio playing a game through the game client.
[0138] In one possible embodiment, the transmission module 1403 further transmits first presentation information to the electronic device in response to the object state of the target virtual object being in a controlled state, the first presentation information indicating that the target virtual object is a virtual object controlled by another audience user.
[0139] In one possible embodiment, the receiving module 1401 further receives an information acquisition request sent from an electronic device, the information acquisition request having an object identifier of a target virtual object, and acquiring object information of the target virtual object; The obtaining module 1402 further obtains object information of the target virtual object based on the object identifier of the target virtual object; The sending module 1403 further sends the object information of the target virtual object to the electronic device, and displays the object information of the target virtual object by the electronic device.
[0140] In one possible embodiment, the apparatus further comprises an adjustment module for adjusting an object state of the target virtual object to the controlled state.
[0141] In one possible embodiment, the object information of the target virtual object includes a usage time and an object task, the usage time being a time during which the target virtual object can be controlled, and the acquisition module 1402 further acquires a bonus resource corresponding to the target virtual object in response to completing the object task of the target virtual object within the usage time of the target virtual object. The sending module 1403 further sends the bonus resource corresponding to the target virtual object to the electronic device.
[0142] In one possible embodiment, the transmission module 1403 further transmits second presentation information to the electronic device in response to a difference between the control time of the target virtual object and the use time of the target virtual object being equal to or less than a time threshold, the second presentation information instructing that a difference between the control time of the target virtual object and the use time of the target virtual object be equal to or less than a time threshold, the control time being a time during which the target virtual object is controlled and the use time being a time during which control of the target virtual object is enabled, and the adjustment module further adjusts an object state of the target virtual object to an uncontrolled state.
[0143] In one possible embodiment, the selectable virtual objects cannot be controlled by the live user.
[0144] The above device obtains the audio-video data stream address of the target virtual object based on the control request, and further transmits the audio-video data stream address to the electronic device, so that the viewer user logged in to the electronic device can control the target virtual object based on the audio-video data stream address, so that the viewer user can not only watch the first live-streaming resource, but also control the target virtual object in the first live-streaming resource, thereby improving the engagement and activity of the viewer user, thereby increasing the interactivity between the viewer user and the live streamer user of the first live-streaming resource, and further improving the attractiveness of the first live-streaming resource to the viewer user, thereby improving the competitiveness of the game corresponding to the first live-streaming resource. In addition, the control method for the virtual object is enriched and highly flexible.
[0145] 13 or 14, the functions of the device are realized by only dividing the functional modules, but in actual applications, the functions can be completed by allocating them to different functional modules as necessary, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. The device according to the above embodiment belongs to the same concept as the method embodiment, and the specific implementation process can be referred to the method embodiment, and will not be described again here.
[0146] 15 illustrates a block diagram of an electronic device 1500 according to an exemplary embodiment of the present application. The electronic device 1500 may be a mobile terminal such as a smartphone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III), an MP4 (Moving Picture Experts Group Audio Layer IV), a notebook computer, or a desktop computer. The electronic device 1500 may also be referred to as a user device, a mobile terminal, a laptop terminal, a desktop terminal, or other names.
[0147] Generally, the electronic device 1500 includes a processor 1501 and a memory 1502. The processor 1501 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 1501 may be implemented in at least one hardware form of a DSP (Digital Signal Processing), an FPGA (Field-Programmable Gate Array), or a PLA (Programmable Logic Array). The processor 1501 may include a main processor and a coprocessor, where the main processor is a processor that processes data in an active state and is also called a CPU (Central Processing Unit), and the coprocessor is a low-power processor that processes data in a standby state. In some embodiments, the processor 1501 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing content to be displayed on a display. In some embodiments, the processor 1501 may further include an AI processor, which processes computational operations related to machine learning. The memory 1502 may include one or more computer readable storage media, which may be non-transitory. The memory 1502 may further include high speed random access memory, and non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, the non-transitory computer readable storage media in the memory 1502 stores at least one instruction that, when executed by the processor 1501, implements a method for controlling a virtual object according to a method embodiment of the present application.
[0148] In some embodiments, the electronic device 1500 may further include a display 1505 that plays the game live streaming resources of the live streamer user, for example, displaying the first live streaming resource and the second live streaming resource.
[0149] The display 1505 displays a user interface (UI). The UI may include graphics, text, icons, videos, and any combination thereof. If the display 1505 is a touch display, the display 1505 may further collect touch signals on or above the surface of the display 1505. The touch signals may be input as control signals to the processor 1501 for processing. In this case, the display 1505 may further provide at least one of virtual buttons and a virtual keyboard, also called soft buttons and soft keyboards. In some embodiments, the display 1505 may be one and is located on the front panel of the electronic device 1500, and in other embodiments, the display 1505 may be at least two and is located on different surfaces of the electronic device 1500 or is located so as to fold, and in other embodiments, the display 1505 may be a flexible display and is located on a curved or folded surface of the electronic device 1500. Furthermore, the display 1505 may be further configured to be a non-rectangular irregular shape, i.e., an irregular display. The display 1505 can be made of materials such as LCD (Liquid Crystal Display) and OLED (Organic Light-Emitting Diode).
[0150] As one skilled in the art will appreciate, the structure shown in FIG. 15 is not intended to limit electronic device 1500, which may include more or fewer components than shown, may combine certain components, or have different component arrangements.
[0151] 16 is a schematic diagram of a server according to an embodiment of the present application. The server 1600 may vary greatly depending on the configuration or performance, and may include one or more processors (Central Processing Units, CPU) 1601 and one or more memories 1602. At least one program code is stored in the one or more memories 1602, and when the at least one program code is loaded and executed by the one or more processors 1601, the method for controlling a virtual object according to the embodiment of each method is realized. Of course, the server 1600 may further include components such as a wired or wireless network interface, a keyboard, and an input / output interface for input / output, and the server 1600 may further include other components for realizing device functions, so that the description thereof will be omitted here.
[0152] In an exemplary embodiment, a virtual object control system is further provided, including an electronic device and a server. Illustratively, the electronic device realizes the embodiment shown in Fig. 11 above, and the server realizes the embodiment shown in Fig. 12 above. Illustratively, the electronic device realizes the embodiment shown in Fig. 2 above by interacting with the server.
[0153] In an exemplary embodiment, a computer-readable storage medium is further provided having at least one program code stored thereon, the at least one program code being loaded and executed by the processor to cause the computer to realize any of the above-mentioned methods for controlling a virtual object. Preferably, the computer-readable storage medium may be a Read-Only Memory (ROM), a Random Access Memory (RAM), a Compact Disc Read-Only Memory (CD-ROM), a magnetic tape, a floppy disk, an optical data storage device, etc.
[0154] In an exemplary embodiment, a computer program or computer program product is further provided having stored therein at least one computer instruction, which, when loaded and executed by a processor, causes a computer to realize any of the above-mentioned methods for controlling a virtual object.
[0155] The above are only illustrative examples of the present application, and do not limit the present application, and any modifications, equivalent replacements, improvements, etc. made within the principle of the present application should be included within the protection scope of the present application.
Claims
1. A method for controlling a virtual object executed by an electronic device, comprising: Displaying a first live-streaming resource, the first live-streaming resource including at least one virtual object selectable by a viewer user and at least one virtual object controlled by a live-streaming user; sending a control request in response to receiving a selection command for a target virtual object among the virtual objects selectable by the at least one audience user, the control request requesting to control the target virtual object; controlling the target virtual object to execute a target operation in response to a control command for the target virtual object; receiving an audio-video data stream address of the target virtual object returned from a server; and displaying a second live-streaming resource based on an audio-video data stream address of the target virtual object, the second live-streaming resource being an audio-video corresponding to the target virtual object.
2. The step of transmitting a control request in response to receiving a selection command for the target virtual object includes: In response to receiving a selection command for the target virtual object, acquiring object information of the target virtual object; displaying object information of the target virtual object; 2. The method of claim 1, comprising: in response to receiving a confirmation command for object information of the target virtual object, sending a control request to a server, the control request having an object identifier of the target virtual object.
3. The step of acquiring object information of the target virtual object in response to receiving a selection command for the target virtual object includes: sending an information acquisition request to the server in response to receiving a selection command for the target virtual object, the information acquisition request having an object identifier of the target virtual object and for acquiring object information of the target virtual object; and receiving object information of the target virtual object returned by the server based on the information acquisition request.
4. The step of controlling the target virtual object to execute a target operation in response to a control command for the target virtual object includes:
2. The method of claim 1, comprising: in response to a control command for the target virtual object, sending the control command to a server and forwarding the control command by the server to a game client, the control command instructing the game client to control the target virtual object to perform a target operation.
5. The step of displaying a first live streaming resource includes: sending a live-streaming resource acquisition request to a server, the live-streaming resource acquisition request having a live-streaming studio identifier of a target live-streaming studio; The method of claim 1, comprising: a step of receiving the first live streaming resource returned from the server and displaying the first live streaming resource, the first live streaming resource being obtained by the server from a game client based on a live streaming studio identifier of the target live streaming studio, and being obtained by a live streamer user of the target live streaming studio playing a game through the game client.
6. The method of claim 1 , wherein the selectable virtual object is an artificial intelligence controlled virtual object.
7. After the step of transmitting a control request in response to receiving a selection command for the target virtual object, the method further comprises: receiving first presentation information returned from a server, the first presentation information indicating that the target virtual object is a virtual object controlled by another audience user; The method of claim 1 , further comprising: displaying the first presentation information.
8. The method comprises: acquiring preference information of a viewer user based on user information of the viewer user, the viewer user including at least one of a user who controls the target virtual object and a user who views the first live distribution resource; and obtaining a target rendering format based on the preference information of the viewer user. The step of displaying a first live streaming resource includes: The method of claim 1 , further comprising displaying the first live-streamed resource in the target rendering format.
9. After the step of controlling the target virtual object to perform a target operation in response to a control command for the target virtual object, the method further comprises: receiving second presentation information transmitted from a server, the second presentation information instructing that a difference between a control time of the target virtual object and a use time of the target virtual object is equal to or less than a time threshold, the control time being a time during which the target virtual object is controlled, and the use time being a time during which the target virtual object is made controllable; The method of claim 1 , further comprising: displaying the second presentation information.
10. The method of claim 1 , wherein the selectable virtual objects are not controllable by the live user.
11. A method for controlling a virtual object executed by a server, comprising: receiving a control request transmitted from an electronic device, the control request having an object identifier of a target virtual object and requesting to control the target virtual object, the target virtual object being a virtual object selectable by a viewer user included in a first live distribution resource, the first live distribution resource including at least one virtual object controlled by a live broadcaster user; obtaining an audio-video data stream address of the target virtual object based on an object identifier of the target virtual object; sending an audio-video data stream address of the target virtual object to the electronic device; and displaying a second live-streaming resource, which is an audio-video corresponding to the target virtual object, based on an audio-video data stream address of the target virtual object.
12. The step of obtaining an audio-video data stream address of the target virtual object based on an object identifier of the target virtual object includes: determining an object state of the target virtual object based on an object identifier of the target virtual object; and in response to an object state of the target virtual object being in an uncontrolled state, obtaining an audio-video data stream address of the target virtual object.
13. After the step of transmitting an audio-video data stream address of the target virtual object to the electronic device, the method further comprises: receiving a control command transmitted from the electronic device; 12. The method of claim 11, further comprising: sending the control instruction to a game client, the control instruction instructing the game client to control the target virtual object to perform a target operation.
14. Prior to the step of receiving a control request transmitted from an electronic device, the method further comprises: receiving a live streaming resource acquisition request sent from the electronic device, the live streaming resource acquisition request having a live streaming studio identifier of a target live streaming studio; Analyzing the live streaming resource acquisition request to obtain a live streaming studio identifier of a target live streaming studio; The method of claim 11, further comprising: acquiring a first live streaming resource from a game client based on a live streaming studio identifier of the target live streaming studio, and returning the first live streaming resource to the electronic device, wherein the first live streaming resource is obtained by a live broadcaster user of the target live streaming studio playing a game through the game client.
15. The method comprises:
13. The method of claim 12, further comprising: in response to an object state of the target virtual object being in a controlled state, transmitting first presentation information to the electronic device, the first presentation information indicating that the target virtual object is a virtual object controlled by another audience user.
16. Prior to the step of receiving a control request transmitted from an electronic device, the method further comprises: receiving an information acquisition request transmitted from the electronic device, the information acquisition request having an object identifier of the target virtual object and for acquiring object information of the target virtual object; obtaining object information of the target virtual object based on an object identifier of the target virtual object; The method of claim 11 , further comprising: transmitting object information of the target virtual object to the electronic device; and displaying the object information of the target virtual object by the electronic device.
17. After the step of transmitting an audio-video data stream address of the target virtual object to the electronic device, the method further comprises: The method of claim 11 , further comprising adjusting an object state of the goal virtual object to a controlled state.
18. The object information of the target virtual object includes a usage time and an object task, the usage time being a time during which the target virtual object is enabled for control; The method comprises: acquiring a bonus resource corresponding to the target virtual object in response to completing an object task of the target virtual object within a usage time of the target virtual object; and transmitting a bonus resource corresponding to the goal virtual object to the electronic device.
19. The method comprises: transmitting second presentation information to the electronic device in response to a difference between a control time of the target virtual object and a use time of the target virtual object being equal to or less than a time threshold, the second presentation information instructing the electronic device to make a difference between a control time of the target virtual object and a use time of the target virtual object equal to or less than a time threshold, the control time being a time during which the target virtual object is controlled, and the use time being a time during which the target virtual object is made controllable; The method of claim 11 , further comprising: adjusting an object state of the goal virtual object to an uncontrolled state.
20. The method of claim 11 , wherein the selectable virtual objects cannot be controlled by a live user.
21. a receiving module for receiving a control request transmitted from an electronic device, the control request having an object identifier of a target virtual object among at least one virtual object selectable by a viewer user, and requesting to control the target virtual object, the target virtual object being a selectable virtual object included in a first live distribution resource, the first live distribution resource including at least one virtual object controlled by a live broadcaster user; an acquisition module for acquiring an audio-video data stream address of the target virtual object according to an object identifier of the target virtual object; A control device for a virtual object, comprising: a transmission module for transmitting an audio-video data stream address of the target virtual object to the electronic device, wherein a second live distribution resource, which is an audio-video corresponding to the target virtual object, is displayed based on the audio-video data stream address of the target virtual object.
22. A virtual object control device including a processor and a memory, wherein the memory stores at least one program code, and the at least one program code, when loaded and executed by the processor, causes the virtual object control device to realize the virtual object control method described in any one of claims 1 to 20.
23. A computer program having at least one computer instruction stored therein, the at least one computer instruction causing a computer device to realize the method for controlling a virtual object according to any one of claims 1 to 20 when the computer program is loaded and executed by a processor.
Citation Information
Patent Citations
Live broadcast data processing method and device, electronic equipment and storage medium
CN112587935A
System, method and program for distributing moving image
JP2019195536A