Virtual scene synchronization method, virtual scene display method, device and equipment

By sending scene image frame data and loading virtual objects, the problem of joining objects outside the virtual scene is solved, and the flexible joining of virtual objects and displaying of virtual scenes is realized, which improves the participation and consistency of virtual games.

CN117298568BActive Publication Date: 2025-01-10TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210730440.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-24
Publication Date
2025-01-10
Estimated Expiration
2042-06-24

AI Technical Summary

Technical Problem

The existing frame synchronization method is difficult to join virtual objects outside the virtual scene and keep the synchronization of each client, and it is impossible to realize the complete synchronous display of virtual scenes.

Method used

By receiving the mid-join request sent by the terminal, the scene image frame data is sent to all terminals of the target virtual scene, so that it runs from the initial progress to the target progress, and loads the target virtual object in all terminals to ensure that the virtual scene is displayed synchronously in all terminals. .

Benefits of technology

It realizes flexible joining and synchronous display of virtual objects, improves the participation and consistency of virtual games, and ensures the synchronous display of virtual scenes in each terminal.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117298568B_ABST
    Figure CN117298568B_ABST
Patent Text Reader

Abstract

The present application provides a method for synchronizing a virtual scene, a method for displaying a virtual scene, an apparatus and a device, and belongs to the field of computer technology. The method for synchronizing a virtual scene includes: receiving a request for joining a target virtual scene sent by a first terminal; sending data of multiple scene image frames of the target virtual scene to the first terminal; in response to the first terminal running the scene progress of the target virtual scene to the target progress, sending an object loading instruction carrying an object identifier to the first terminal and at least one second terminal, so that the first terminal and at least one second terminal load the target virtual object in the target virtual scene. The above scheme can synchronize the terminal corresponding to the virtual object added midway with the terminal corresponding to the existing virtual object, ensure the consistency of the display of the target virtual scene on each terminal, and improve the flexibility of participating in the virtual game.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a virtual scene synchronization method, a virtual scene display method, a device and equipment. Background Art

[0002] With the development of computer technology, there are more and more online games. How to keep the various clients of online games synchronized is a problem that needs to be solved.

[0003] At present, frame synchronization can be used for game synchronization. Frame synchronization is a synchronization method for online games. The server forwards the operation instruction sequences obtained from multiple clients to each client, and the client executes the game logic according to the received operation instruction sequence and then renders the scene image frame of the virtual scene, so that each client can synchronously display the scene image frame of the virtual scene.

[0004] However, the above solution is aimed at synchronizing between clients corresponding to virtual objects that already exist in the virtual scene, but cannot achieve adding virtual objects outside the virtual scene to the virtual scene and keeping each client synchronized. Summary of the invention

[0005] The embodiments of the present application provide a virtual scene synchronization method, a virtual scene display method, an apparatus and a device, which can synchronize the terminal corresponding to the virtual object added midway with the terminal corresponding to the existing virtual object, promote more virtual objects to join the target virtual scene, and thus improve participation. The technical solution is as follows:

[0006] In one aspect, a method for synchronizing a virtual scene is provided, the method comprising:

[0007] Receiving a midway joining request for a target virtual scene sent by a first terminal, the midway joining request carries an object identifier of a target virtual object, the target virtual object is a virtual object controlled by the first terminal, the target virtual scene performs data synchronization in a frame synchronization manner, and the target virtual scene includes a virtual object controlled by at least one second terminal;

[0008] Sending data of multiple scene image frames of the target virtual scene to the first terminal, the multiple scene image frames are all scene image frames in the running process of the target virtual scene, and the data of the multiple scene image frames are used to run the scene progress of the target virtual scene from the initial progress to the target progress, and the target progress is the scene progress of the target virtual scene at present;

[0009] In response to the first terminal running the scene progress of the target virtual scene to the target progress, sending an object loading instruction carrying the object identifier to the first terminal and the at least one second terminal, so that the first terminal and the at least one second terminal load the target virtual object in the target virtual scene.

[0010] In some embodiments, the method further comprises:

[0011] In response to receiving the object control request sent by the first terminal and the at least one second terminal, a confirmation control instruction is sent to the first terminal and the at least one second terminal, where the confirmation control instruction is used to instruct to switch the target virtual object to a controllable state.

[0012] On the other hand, a method for displaying a virtual scene is provided, the method comprising:

[0013] In response to a midway joining operation on a target virtual scene, data of a plurality of scene image frames of the target virtual scene are acquired, wherein the target virtual scene performs data synchronization in a frame synchronization manner, and the plurality of scene image frames are all scene image frames during the operation of the target virtual scene;

[0014] Based on the data of the multiple scene image frames, the scene progress of the target virtual scene is run from the initial progress to the target progress, where the target progress is the scene progress of the target virtual scene at present;

[0015] In the target virtual scene, the target virtual object is loaded.

[0016] In some embodiments, loading the target virtual object in the target virtual scene includes:

[0017] Before the scene progress of the target virtual scene is loaded into the target progress, the target virtual object is preloaded in the target virtual scene.

[0018] On the other hand, a virtual scene synchronization device is provided, the device comprising:

[0019] A receiving module, configured to receive a midway joining request for a target virtual scene sent by a first terminal, wherein the midway joining request carries an object identifier of a target virtual object, wherein the target virtual object is a virtual object controlled by the first terminal, wherein the target virtual scene performs data synchronization in a frame synchronization manner, and wherein the target virtual scene includes a virtual object controlled by at least one second terminal;

[0020] a sending module, used for sending data of a plurality of scene image frames of the target virtual scene to the first terminal, wherein the plurality of scene image frames are all scene image frames in the running process of the target virtual scene, and the data of the plurality of scene image frames are used for running the scene progress of the target virtual scene from an initial progress to a target progress, wherein the target progress is the scene progress of the target virtual scene at present;

[0021] The sending module is further used to send an object loading instruction carrying the object identifier to the first terminal and the at least one second terminal in response to the first terminal running the scene progress of the target virtual scene to the target progress, so that the first terminal and the at least one second terminal load the target virtual object in the target virtual scene.

[0022] In some embodiments, the sending module is used to obtain data of the multiple scene image frames of the target virtual scene, the data of the scene image frames including first category data and second category data, the first category data is used to execute rendering logic, and the second category data is used to execute operation logic; and the second category data of the multiple scene image frames is sent to the first terminal.

[0023] In some embodiments, the apparatus further comprises:

[0024] A first acquisition module, used for acquiring a plurality of target scene image frames within a target frame number range from the plurality of scene image frames;

[0025] The sending module is further used to send the first type of data of the multiple target scene image frames to the first terminal.

[0026] In some embodiments, the apparatus further comprises:

[0027] A determination module, configured to determine a plurality of rendering contents based on the data of the plurality of scene image frames;

[0028] A second acquisition module is used to acquire data corresponding to a target rendering content whose rendering priority is higher than a target priority from the data of the multiple scene image frames, wherein the data corresponding to the target rendering content is part of the first category of data of the scene image frame where the target rendering content is located;

[0029] The sending module is further used to send data corresponding to the target rendering content to the first terminal.

[0030] In some embodiments, the sending module is also used to send a confirmation control instruction to the first terminal and the at least one second terminal in response to receiving an object control request sent by the first terminal and the at least one second terminal, and the confirmation control instruction is used to instruct to switch the target virtual object to a controllable state.

[0031] In some embodiments, the receiving module is further used to receive a scene leaving request for the target virtual scene sent by the first terminal, wherein the scene leaving request carries an object identifier of the target virtual object;

[0032] The sending module is further used to send a leaving verification instruction to the first terminal and the at least one second terminal, wherein the leaving verification instruction is used to instruct to determine whether the leaving object state of the target virtual object is a leaving state;

[0033] The sending module is also used to send an object settlement instruction to the first terminal and the at least one second terminal in response to receiving an object settlement request sent by the first terminal, and the object settlement instruction is used to instruct the first terminal to report the current attribute information of the target virtual object and instruct the at least one second terminal to remove the target virtual object from the target virtual scene.

[0034] In some embodiments, the apparatus further comprises:

[0035] The marking module is used to mark any first virtual object that exists when the scene progress of the target virtual scene is the initial progress with a first mark, wherein the first mark is used to indicate that the first virtual object always exists in the target virtual scene.

[0036] In some embodiments, the marking module is further used to respond to the midway joining request of the target virtual object, and when the target virtual object is the first virtual object, modify the loading mark of the target virtual object from the first mark to a second mark, wherein the second mark is used to indicate that the target virtual object has left the target virtual scene and joins the target virtual scene this time;

[0037] The marking module is further used to mark the target virtual object with a third mark when the target virtual object is not the first virtual object, and the third mark is used to indicate that the target virtual object joins the target virtual scene this time.

[0038] In some embodiments, the apparatus further comprises:

[0039] A third acquisition module, configured to acquire, in response to the midway joining request of the target virtual object, a loading mark of at least one second virtual object that existed in the target virtual scene, where the mark of the second virtual object is the first mark, the second mark or the third mark;

[0040] The marking module is further configured to, for any second virtual object, change the loading mark of the second virtual object to a fourth mark when the loading mark of the second virtual object is the second mark, wherein the fourth mark is used to indicate that the second virtual object is not added to the target virtual scene this time;

[0041] The marking module is further used to modify the loading mark of the second virtual object to a fifth mark when the loading mark of the second virtual object is the third mark, and the fifth mark is used to indicate that the second virtual object is not added to the target virtual scene this time.

[0042] In another aspect, a device for displaying a virtual scene is provided, the device comprising:

[0043] An acquisition module, configured to acquire data of a plurality of scene image frames of the target virtual scene in response to a midway joining operation on the target virtual scene, wherein the target virtual scene performs data synchronization in a frame synchronization manner, and the plurality of scene image frames are all scene image frames during the operation of the target virtual scene;

[0044] An operation module, configured to operate the scene progress of the target virtual scene from an initial progress to a target progress based on the data of the plurality of scene image frames, wherein the target progress is the scene progress of the target virtual scene at present;

[0045] A loading module is used to load the target virtual object in the target virtual scene.

[0046] In some embodiments, the data of the scene image frame includes a first type of data and a second type of data, the first type of data is used to execute rendering logic, and the second type of data is used to execute operation logic;

[0047] The operation module comprises:

[0048] A loading unit, used for loading the target virtual scene when the scene progress is the initial progress;

[0049] An acquiring unit, configured to acquire the second type of data of the plurality of scene image frames from the data of the plurality of scene image frames;

[0050] An operating unit is used to operate the scene progress of the target virtual scene from an initial progress to a target progress based on the second type of data of the plurality of scene image frames.

[0051] In some embodiments, the running unit is used to obtain multiple target scene image frames within a target frame number range from the multiple scene image frames; obtain first-category data of the multiple target scene image frames; and run the scene progress of the target virtual scene from an initial progress to the target progress based on the first-category data of the multiple target scene image frames and the second-category data of the multiple scene image frames.

[0052] In some embodiments, the running unit is used to determine multiple rendering contents based on the data of the multiple scene image frames; obtain data corresponding to target rendering contents whose rendering priority is higher than the target priority from the data of the multiple scene image frames, the data corresponding to the target rendering contents being part of the first category data of the scene image frames where the target rendering contents are located; and based on the data corresponding to the target rendering contents and the second category data of the multiple scene image frames, run the scene progress of the target virtual scene from the initial progress to the target progress.

[0053] In some embodiments, the apparatus further comprises:

[0054] A first determination module, configured to determine a loading mark of at least one virtual object associated with the target virtual scene based on data of the plurality of scene image frames;

[0055] The loading module is further used to load a virtual object with a target loading mark in the target virtual scene whose scene progress is the initial progress when there is a target loading mark, and the target loading mark is used to indicate that the virtual object exists when the scene progress of the target virtual scene is the initial progress.

[0056] In some embodiments, the running module is used to display the target virtual scene when the scene progress is the initial progress; divide the data of the multiple scene image frames into a first frame data group and a second frame data group in time sequence; based on the first frame data group, the target virtual scene is rendered in a partial rendering manner; based on the second frame data group, the target virtual scene is rendered in a full rendering manner, so that the target virtual scene is loaded to the target progress.

[0057] In some embodiments, the loading module is used to preload the target virtual object in the target virtual scene before the scene progress of the target virtual scene is loaded to the target progress.

[0058] In some embodiments, the apparatus further comprises:

[0059] A second determining module, configured to determine a leaving object state of the target virtual object in response to a leaving operation on the target virtual scene;

[0060] The sending module is used for sending the current attribute information of the target virtual object to the server in response to the leaving object state being a leaveable state.

[0061] On the other hand, a computer device is provided, which includes a processor and a memory, wherein the memory is used to store at least one computer program, and the at least one computer program is loaded and executed by the processor to implement the virtual scene synchronization method in the embodiment of the present application, or the at least one computer program is loaded and executed by the processor to implement the virtual scene display method in the embodiment of the present application.

[0062] On the other hand, a computer-readable storage medium is provided, in which at least one computer program is stored. The at least one computer program is loaded and executed by a processor to implement a method for synchronizing a virtual scene as in an embodiment of the present application, or the at least one computer program is loaded and executed by a processor to implement a method for displaying a virtual scene as in an embodiment of the present application.

[0063] On the other hand, a computer program product is provided, which, when executed by a processor, implements the method for synchronizing a virtual scene in an embodiment of the present application, or, when executed by a processor, implements the method for displaying a virtual scene in an embodiment of the present application.

[0064] The embodiment of the present application provides a synchronization scheme for virtual scenes. When a target virtual object controlled by a first terminal requests to join a target virtual scene, data of all scene image frames of the target virtual scene during the process from the scene progress being an initial progress to the target progress is returned to the first terminal, so that the first terminal can quickly chase frames based on the acquired data, so that the first terminal can run the scene progress of the target virtual scene from the initial progress to the target progress. When the target virtual scene of the first terminal runs to the target progress, an object loading instruction carrying an object identifier is sent to the first terminal and at least one second terminal where the virtual object in the target virtual scene is located, so that each terminal can load the target virtual object in the target virtual scene at the target progress, thereby realizing synchronous display of the target virtual scene on each terminal, so that the timing of the target virtual object joining the virtual scene in the virtual game is not restricted. Regardless of when the virtual object requests to join the virtual scene in the virtual game, the consistency of the display of the target virtual scene on each terminal can be guaranteed, thereby improving the flexibility of participating in the virtual game. BRIEF DESCRIPTION OF THE DRAWINGS

[0065] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0066] Figure 1 It is an implementation environment of a virtual scene synchronization method provided according to an embodiment of the present application;

[0067] Figure 2 is a flowchart of a virtual scene synchronization method provided according to an embodiment of the present application;

[0068] Figure 3 is a flow chart of a method for displaying a virtual scene according to an embodiment of the present application;

[0069] Figure 4 is an interactive flow chart of another virtual scene synchronization method provided according to an embodiment of the present application;

[0070] Figure 5 is a schematic diagram of a first virtual scene provided according to an embodiment of the present application;

[0071] Figure 6 It is an interactive flow chart of adding a target virtual object to a target virtual scene according to an embodiment of the present application;

[0072] Figure 7 is an interactive flow chart of a target virtual object leaving a target virtual scene provided according to an embodiment of the present application;

[0073] Figure 8 It is a structural schematic diagram of a virtual scene synchronization device provided according to an embodiment of the present application;

[0074] Fig. 9 is a structural schematic diagram of another virtual scene synchronization device provided according to an embodiment of the present application;

[0075] Fig.10 is a structural schematic diagram of a virtual scene display device provided according to an embodiment of the present application;

[0076] Fig.11 is a schematic structural diagram of another virtual scene display device provided according to an embodiment of the present application;

[0077] Fig.12 is a schematic diagram of the structure of a terminal provided according to an embodiment of the present application;

[0078] Fig.13It is a structural diagram of a server provided according to an embodiment of the present application. DETAILED DESCRIPTION

[0079] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below in conjunction with the accompanying drawings.

[0080] In this application, the terms "first", "second", etc. are used to distinguish identical or similar items with basically the same effects and functions. It should be understood that there is no logical or temporal dependency between "first", "second", and "nth", nor is there any limitation on quantity and execution order.

[0081] In the present application, the term "at least one" means one or more, and the term "plurality" means two or more.

[0082] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.) and signals involved in this application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions. For example, the data of the scene image frames involved in this application are all obtained with full authorization.

[0083] For ease of understanding, the terms involved in this application are explained below.

[0084] Frame synchronization: It is a synchronization method for online games. The server forwards the operation instruction sequences triggered by multiple terminals to multiple terminals respectively, and the multiple terminals respectively execute the game logic according to the received operation instruction sequences and then render the virtual scene to achieve synchronization between multiple terminals.

[0085] Fast frame tracking: a way of executing game logic in frame synchronization. For virtual objects added to the virtual scene midway, the game logic is quickly executed in time sequence according to the sequence of operation instructions triggered in the virtual scene, and then the virtual scene is rendered, so that the game progress of the terminal controlling the virtual object is consistent with the game scene progress of other terminals displaying the virtual scene.

[0086] Virtual object: refers to an movable object in a virtual scene. The movable object can be a virtual person, a virtual animal, a cartoon character, etc. For example: a person, an animal, a plant, an oil drum, a wall, a stone, etc. displayed in a virtual scene. The virtual object can be a virtual image in the virtual scene that is used to represent the user. A virtual scene can include multiple virtual objects, each of which has its own shape and volume in the virtual scene and occupies a part of the space in the virtual scene. The virtual object in the embodiment of the present application is used to represent the user's virtual image.

[0087] The virtual scene synchronization method provided in the embodiment of the present application can be executed by a computer device. In some embodiments, the computer device is a terminal or a server. The following takes the computer device as an example to introduce the implementation environment of the virtual scene synchronization method provided in the embodiment of the present application. Figure 1 Schematic diagram of an implementation environment of a virtual scene synchronization method provided according to an embodiment of the present application. Figure 1 The implementation environment includes a terminal 101 and a server 102. The terminal 101 and the server 102 can be directly or indirectly connected via wired or wireless communication, which is not limited in the present application.

[0088] In some embodiments, the terminal 101 is a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, an intelligent voice interaction device, a smart home appliance, a car terminal, etc., but is not limited thereto. The terminal 101 has an application installed and running. The application supports a virtual game, which may include one or more virtual scenes. When the virtual game includes a virtual scene, joining the virtual scene midway means requesting to join the virtual game from outside the virtual game and joining the virtual scene; or requesting to join the virtual scene when the virtual game is not in the virtual scene. When the virtual game includes multiple virtual scenes, joining the virtual scene midway means requesting to join the virtual game from the virtual game and joining a virtual scene; or requesting to join a virtual scene when the virtual game is not in the virtual scene; or requesting to join another virtual scene from a virtual scene in the virtual game. The application may be any one of a first-person shooting game (FPS), a third-person shooting game, a multiplayer online tactical competitive game (MOBA), a virtual reality application, a three-dimensional map program, or a multiplayer gunfight survival game. Terminal 101 is a terminal used by a user, and a user account is logged in. The user uses terminal 101 to manipulate a virtual object in a virtual scene to perform an activity, and the activity includes but is not limited to: adjusting body posture, crawling, walking, running, riding, jumping, driving, picking up, shooting, attacking, and throwing. Indicatively, the virtual object is a virtual character, such as a simulated character or an anime character.

[0089] Those skilled in the art will appreciate that the number of the above terminals may be more or less. For example, the above terminal may be only one, or the above terminals may be dozens or hundreds, or more. The embodiment of the present application does not limit the number of terminals and device types.

[0090] In some embodiments, server 102 is an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides 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, CDN (Content Delivery Network), big data and artificial intelligence platforms. Server 102 is used to provide background services for applications that support virtual scenes. In some embodiments, server 102 undertakes the main computing work and terminal 101 undertakes the secondary computing work; or, server 102 undertakes the secondary computing work and terminal 101 undertakes the main computing work; or, server 102 and terminal 101 use a distributed computing architecture for collaborative computing.

[0091] Figure 2 is a flowchart of a virtual scene synchronization method provided according to an embodiment of the present application, see Figure 2 In the embodiment of the present application, the server is used as an example to illustrate. The virtual scene synchronization method includes the following steps:

[0092] 201. A server receives a midway joining request for a target virtual scene sent by a first terminal. The midway joining request carries an object identifier of a target virtual object. The target virtual object is a virtual object controlled by the first terminal. The target virtual scene performs data synchronization in a frame synchronization manner. The target virtual scene includes a virtual object controlled by at least one second terminal.

[0093] In the embodiment of the present application, the server is Figure 1 The first terminal is Figure 1The terminal 101 shown, a user account is logged in on the first terminal. The target virtual object can be manipulated to join the target virtual scene through the user account. The first terminal sends a midway joining request to the target virtual scene to the server. The midway joining request carries the object identifier of the target virtual object and the scene identifier of the target virtual scene. The server can determine that the target virtual object requests to join the target virtual scene by parsing the midway joining request. The target virtual scene uses frame synchronization to synchronize data, that is, the server can obtain the operation instruction sequence triggered by multiple terminals associated with the target virtual scene, and then the server synchronizes the acquired operation instruction sequence triggered by multiple terminals to the multiple terminals, and the multiple terminals execute the operation logic according to the received operation instruction sequence and then render the target virtual scene to realize the synchronous display of the target virtual scene on multiple terminals. The multiple terminals include at least one second terminal, which is a terminal for manipulating virtual objects in the target virtual scene. In addition to the at least one second terminal, the multiple terminals may also include other terminals, the virtual objects controlled by the other terminals have entered the target virtual scene, and the virtual objects controlled by the other terminals are not in the target virtual scene at the current moment.

[0094] 202. The server sends data of multiple scene image frames of the target virtual scene to the first terminal. The multiple scene image frames are all scene image frames in the operation process of the target virtual scene. The data of the multiple scene image frames are used to run the scene progress of the target virtual scene from the initial progress to the target progress. The target progress is the scene progress of the target virtual scene at present.

[0095] In an embodiment of the present application, the server stores data of multiple virtual scenes, and based on the scene identifier of the target virtual scene, obtains data of multiple scene image frames of the target virtual scene. The data of the scene image frame includes data for executing operation logic and data for executing rendering logic. In this process, the first terminal can render the multiple scene image frames based on the data of the multiple scene image frames, that is, the first terminal can run the scene progress of the target virtual scene from the initial progress to the target progress based on the data of the multiple scene image frames, and realize fast frame tracking of the target virtual scene. Among them, the initial progress is the scene progress when the target virtual scene is first created, which can also be called zero progress.

[0096] 203. In response to the first terminal running the scene progress of the target virtual scene to the target progress, the server sends an object loading instruction carrying an object identifier to the first terminal and at least one second terminal, so that the first terminal and the at least one second terminal load the target virtual object in the target virtual scene.

[0097] In an embodiment of the present application, when the first terminal runs the scene progress of the target virtual scene to the target progress, the server sends an object loading instruction to the first terminal and at least one second terminal. The object loading instruction sent by the server to the at least one second terminal carries the object identifier of the target virtual object. Then, the first terminal and the at least one second terminal load the target virtual object in the target virtual scene in response to the object loading instruction.

[0098] The embodiment of the present application provides a synchronization scheme for virtual scenes. When a target virtual object controlled by a first terminal requests to join a target virtual scene, data of all scene image frames of the target virtual scene during the process from the scene progress being an initial progress to the target progress is returned to the first terminal, so that the first terminal can quickly chase frames based on the acquired data, so as to realize that the scene progress of the target virtual scene is run from the initial progress to the target progress at the first terminal. Then, when the target virtual scene of the first terminal runs to the target progress, an object loading instruction carrying an object identifier is sent to the first terminal and at least one second terminal where the virtual object in the target virtual scene is located, so that each terminal can load the target virtual object in the target virtual scene at the target progress, thereby realizing synchronous display of the target virtual scene on each terminal, so that the timing of the target virtual object joining the virtual scene in the virtual game is not restricted. Regardless of when the virtual object requests to join the virtual scene in the virtual game, the consistency of the display of the target virtual scene on each terminal can be guaranteed, thereby improving the flexibility of participating in the virtual game.

[0099] Figure 3 is a flowchart of a method for displaying a virtual scene according to an embodiment of the present application, see Figure 3 In the embodiment of the present application, the first terminal is used as an example to illustrate the display method of the virtual scene. The display method of the virtual scene includes the following steps:

[0100] 301. In response to a midway joining operation on a target virtual scene, the first terminal obtains data of multiple scene image frames of the target virtual scene, the target virtual scene performs data synchronization in a frame synchronization manner, and the multiple scene image frames are all scene image frames during the operation of the target virtual scene.

[0101] In an embodiment of the present application, a user can trigger a mid-join operation for a target virtual scene on the first terminal through a user account logged in on the first terminal. The server determines the target virtual scene through the scene identifier of the target virtual scene. Then, the server obtains data of all scene image frames during the operation of the target virtual scene, and then returns the data to the first terminal.

[0102] 302. The first terminal runs the scene progress of the target virtual scene from the initial progress to the target progress based on the data of the plurality of scene image frames. The target progress is the scene progress of the target virtual scene at present.

[0103] In an embodiment of the present application, there is currently at least one virtual object in the target virtual scene, and the at least one virtual object corresponds to at least one second terminal, and the scene progress of the target virtual scene displayed on the at least one first terminal is the target progress. Since the target virtual object controlled by the first terminal is a virtual object added midway, in order to keep the first terminal and the at least one second terminal synchronized, the first terminal can quickly chase the target virtual scene based on the data of all scene image frames, that is, quickly run the scene progress of the target virtual scene from the initial progress to the target progress.

[0104] 303. The first terminal loads a target virtual object in a target virtual scene.

[0105] In the embodiment of the present application, when the scene progress of the target virtual scene of the first terminal is the target progress, the first terminal loads the target virtual object in the target virtual scene. It should be noted that when the first terminal loads the target virtual object, the at least one second terminal also loads the target virtual object in the target virtual scene.

[0106] An embodiment of the present application provides a display solution for a virtual scene. When a target virtual object controlled by a first terminal requests to join a target virtual scene, data of all scene image frames of the target virtual scene during a process in which the scene progress is from an initial progress to a target progress is obtained, so that the first terminal can quickly chase frames based on the obtained data to realize running the scene progress of the target virtual scene from the initial progress to the target progress, and then load the target virtual object in the target virtual scene, so that the scene progress of the target virtual scene displayed by the first terminal is synchronized with the scene progress of the target virtual scene displayed by other terminals, so that the timing of the target virtual object joining the virtual scene in the virtual game is not restricted, and no matter when the virtual object requests to join the virtual scene in the virtual game, the consistency of the display of the target virtual scene on each terminal can be guaranteed, thereby improving the flexibility of participating in the virtual game.

[0107] Figure 4 is an interactive flow chart of a virtual scene synchronization method provided according to an embodiment of the present application, see Figure 4 In the embodiment of the present application, the interaction between the terminal and the server is taken as an example for explanation. The method for displaying the virtual scene comprises the following steps:

[0108] 401. In response to a midway joining operation on a target virtual scene, a first terminal sends a midway joining request to a server. The target virtual scene performs data synchronization in a frame synchronization manner. The midway joining request carries an object identifier of a target virtual object, which is a virtual object controlled by the first terminal.

[0109] In an embodiment of the present application, when the target virtual scene is currently in operation, the target virtual object can request to join the target virtual scene midway from other virtual scenes, or can request to join the target virtual scene midway when not in the virtual scene. Accordingly, the target virtual object requests to join the target scene midway, including the following three situations.

[0110] In case one, the target virtual scene is a virtual scene among multiple virtual scenes included in the virtual game. The multiple virtual scenes are synchronized respectively by frame synchronization. During the virtual game, the target virtual object is in another virtual scene outside the target virtual scene in the virtual game. At this time, the target virtual object can request to join the target virtual scene midway from the other virtual scene. Accordingly, the first terminal displays the first virtual scene, which displays the target virtual object and the midway joining control. The first virtual scene is the other virtual scene where the target virtual object is currently located. Then, when the midway joining control is triggered, it is determined that the target virtual object requests to join the target virtual scene, and the first terminal sends the midway joining request to the server. Among them, the first virtual scene and the target virtual scene are both virtual scenes in the virtual game, and the first virtual scene and the target virtual scene are independent of each other and do not affect each other. The solution provided in the embodiment of the present application enables the target virtual object to be midway joined from one virtual scene in the virtual game to another virtual scene by sending a midway joining request to the server when the target virtual object requests to join the target virtual scene from the first virtual scene in the virtual game.

[0111] For example, Figure 5 is a schematic diagram of a first virtual scene provided according to an embodiment of the present application. Figure 5 , the first virtual scene displays the target virtual object, the midway join control, and the map display area. The map display area includes nine virtual scenes of the virtual game. Among them, the virtual scene numbered 2 is the first virtual scene where the target virtual object is located. The target virtual object can perform the game task in the first virtual scene in the first virtual scene. The virtual scene numbered 5 is the target virtual scene. The target virtual scene can be determined by triggering the number in the map display area. By triggering the midway join control, the target virtual object can join the virtual scene numbered 5 from the virtual scene numbered 2.

[0112] Case 2: The target virtual scene is a virtual scene in which the virtual game includes multiple virtual scenes. At the beginning of the virtual game, the target virtual object does not participate in the virtual game, and is not in any virtual scene; or, at the beginning of the virtual game, the target virtual object participates in the virtual game, but the target virtual object is in a waiting state, and is not in any virtual scene. At this time, the process of the target virtual object requesting to join the target virtual scene is: the first terminal displays an object selection interface, and multiple virtual objects are displayed in the object selection interface. In response to the selection operation of the target virtual object, the first terminal displays a scene selection interface, and multiple virtual scenes of the virtual game are displayed in the scene selection interface. In response to the selection operation of the target virtual scene, the first terminal sends a midway joining request to the server. It should be noted that the target virtual scene can also be selected without randomly adding the target virtual object to any virtual scene among the multiple virtual scenes, and the randomly added virtual scene is the target virtual scene.

[0113] Case three, the target virtual scene is the only virtual scene of the virtual game. At the beginning of the virtual game, the target virtual object did not participate in the virtual game, and did not join the target virtual scene; or, at the beginning of the virtual game, the target virtual object participated in the virtual game, but the target virtual object was in a waiting state and did not join the target virtual scene. The process of the target virtual object requesting to join the target virtual scene is: the first terminal displays an object selection interface, and multiple virtual objects are displayed in the object selection interface. In response to the selection operation of the target virtual object, the first terminal sends a midway joining request to the server. The midway joining request carries the object identifier of the target virtual object.

[0114] In the above situations 2 and 3, by sending a mid-join request to the server when the target virtual object is not in the virtual scene and requests to join the target virtual scene, the target virtual object can join the target virtual scene of the virtual game midway when it is not in the virtual scene, so that the timing of joining the virtual game is not restricted, so that the virtual object can freely join the target virtual scene, thereby improving the flexibility of participating in the virtual game.

[0115] In some embodiments, the target virtual object can actively request to join the target virtual scene, or can request to join the target virtual scene when receiving an invitation from any virtual object in the target virtual scene. The target virtual object can join the target virtual scene in the following three ways.

[0116] Joining method 1: The target virtual object actively requests to join the target virtual scene by selecting the target virtual scene in the map display area. At this time, the first terminal displays the first virtual scene, which displays a map display area, and the map display area includes identifiers corresponding to multiple virtual scenes. In response to a triggering operation on an identifier corresponding to any virtual scene, the first terminal sends a midway joining request to the server, so that the target virtual object can join the target virtual scene from the first virtual scene.

[0117] In the second joining method, the target virtual object actively requests to join the target virtual scene by entering the virtual channel of the target virtual scene. Multiple virtual scenes of the virtual game are connected by virtual channels. In response to the target virtual object joining the virtual channel corresponding to the target virtual scene, the first terminal sends a midway joining request to the server, so that the target virtual object can join the target virtual scene from the first virtual scene.

[0118] Joining method three: the target virtual object is invited to join the target virtual scene. When any virtual object in the target virtual scene sends an invitation to the target virtual object, the first terminal displays an invitation prompt message and a midway join control. In response to a trigger operation on the midway join control, the first terminal sends a midway join request to the server, so that the target virtual object can join the target virtual scene from the first virtual scene and provide support for other virtual objects in the target virtual scene.

[0119] 402. The server receives a mid-way joining request for a target virtual scene sent by a first terminal, sends data of multiple scene image frames of the target virtual scene to the first terminal, and sends an object identifier of the target virtual object to at least one second terminal, wherein the multiple scene image frames are all scene image frames during the operation of the target virtual scene.

[0120] In an embodiment of the present application, the target virtual scene includes a virtual object controlled by at least one second terminal. The data of the multiple scene image frames include an operation instruction sequence between a server and a terminal associated with the target virtual scene, data for rendering a virtual scene, and data for rendering a virtual object. The terminal associated with the target virtual scene refers to a terminal corresponding to a virtual object that has appeared in the target virtual scene. The operation instruction sequence includes multiple object control instructions, which are used to control virtual objects, including attack instructions, escape instructions, or posture adjustment instructions, etc., which are not limited in the embodiment of the present application. The data of the multiple scene image frames also include object creation instructions and object removal instructions between a server and a terminal associated with the target virtual scene.

[0121] It should be noted that the target virtual object can join or leave the target virtual scene multiple times. In the process of each time the target virtual object joins the target virtual scene, the first terminal can run the scene progress of the target virtual scene from the initial progress to the current scene progress based on the data of multiple scene image frames; when the target virtual object leaves the target virtual scene, the target virtual scene in the leaving progress can be saved, so that when the target virtual object joins the target virtual scene midway, it can run from the leaving progress to the current scene progress of the target virtual scene to improve the synchronization progress. Among them, the above process of running the scene progress of the target virtual scene from a certain progress to the current scene progress can be called fast frame tracking.

[0122] In some embodiments, the server may divide the data in the scene image frame into a first category of data and a second category of data. Among them, the first category of data is used to execute rendering logic, and the second category of data is used to execute operation logic. Since the first terminal executes a large amount of operation logic and rendering logic in a short period of time, the first terminal will load the virtual scene and virtual objects at a slower speed, resulting in a longer time for the first terminal and other terminals to synchronize, thereby reducing the user experience. Therefore, the server can select part of the data from multiple scene image frames and send it to the first terminal, so that the first terminal uses the received part of the data to run the scene progress of the target virtual scene from the initial progress to the current scene progress, so as to reduce synchronization time and improve synchronization efficiency. The server sends data to the first terminal in the following four ways.

[0123] Sending method 1: If the first terminal does not display each scene image frame during the fast frame tracking process, it is not necessary to render the scene image frame. The server may not send the first type of data for executing the rendering logic to the first terminal, but only send the second type of data for executing the operation logic to the first terminal. Accordingly, the server obtains data for loading multiple scene image frames of the target virtual scene. Then, the server obtains the second type of data of multiple scene image frames from the data of the multiple scene image frames according to the attribute information of the data. The server sends the second type of data of multiple scene image frames to the first terminal. Among them, the attribute information of the data is used to indicate the purpose of the data, that is, to indicate that the data is used to execute the rendering logic or the operation logic. The solution provided in the embodiment of the present application, by only sending the second type of data for executing the operation logic to the first terminal, so that the first terminal only needs to process the second type of data of the multiple scene image frames, it can run the scene progress of the target virtual scene from the initial progress to the current scene progress, and the processed data is less, which can improve the efficiency of running the target virtual scene to the current scene progress.

[0124] In the second sending mode, if the first terminal does not execute the rendering logic, the special effects of the skills released by the virtual object in the target virtual scene when the fast frame chasing is about to end cannot be presented, and the user may perform a wrong operation because he cannot see the special effect of the skill, such as manipulating the target virtual object to enter the range of the special effect of the skill. Therefore, on the basis of sending the second type of data of multiple scene image frames to the first terminal, the server can also send the first type of data of some scene image frames to the first terminal. Accordingly, the server obtains multiple target scene image frames within the target frame number range from multiple scene image frames. Then, the server sends the first type of data of multiple target scene image frames to the first terminal. Among them, the target frame number range is 60 frames, 90 frames or 120 frames ranked later in the multiple scene image frames, and the embodiment of the present application does not limit this. It should be noted that in the process of fast frame chasing of the first terminal, the target virtual scene may generate new scene image frame data, and the server sends the data of the newly generated scene image frame to the first terminal, and the first terminal selects multiple scene image frames within the target frame number range from back to front in chronological order for rendering. The solution provided by the embodiment of the present application, by sending the first category data of multiple target scene image frames sorted later to the first terminal on the basis of sending the second category data of multiple scene image frames to the first terminal, so that the first terminal can render based on the first category data of multiple target scene image frames, so that when the target virtual scene runs to the current scene progress, the first terminal can present the situation in the target virtual scene, avoiding the user's erroneous operation due to the first terminal not presenting the skill effects of the skills released by other virtual objects.

[0125] In the third sending mode, there may be skill effects with a long duration in the target virtual scene. After the target virtual object is loaded, the skill effects may still exist. If these skill effects are not rendered, the skill effects cannot be presented after the fast frame chasing ends. Therefore, on the basis of sending the second type of data of multiple scene image frames to the first terminal, the server can also send data corresponding to the rendering content with a higher priority to the first terminal. Accordingly, the server determines multiple rendering contents based on the data of multiple scene image frames. Then, the server obtains data corresponding to the target rendering content with a rendering priority higher than the target priority from the data of multiple scene image frames. Then, the server sends the data corresponding to the target rendering content to the first terminal. Among them, the data corresponding to the target rendering content is part of the data in the first type of data of the scene image frame where the target rendering content is located. The solution provided in the embodiment of the present application, by sending data corresponding to the target rendering content with a higher rendering priority to the first terminal on the basis of sending the second type of data of multiple scene image frames to the first terminal, enables the first terminal to always present the target rendering content, and avoids the first terminal not presenting the target rendering content, causing the user to perform an erroneous operation.

[0126] For example, when the target rendering content is the fire trap released by the NPC (non-player character) of the target virtual scene when the scene progress of the target virtual scene is the initial progress, the fire trap lasts for the entire virtual game. In the process of running the scene progress of the target virtual scene from the initial progress to the target progress, if the first terminal does not render the fire trap, the user will mistakenly manipulate the target virtual object to enter the range of the fire trap because the user does not see the fire trap, thereby causing the target virtual object to be damaged, which in turn gives the user the illusion of a bug, resulting in a poor user experience.

[0127] In the fourth sending mode, the server can also simultaneously send the second type of data of multiple scene image frames, the first type of data of multiple target scene image frames that are sorted later, and the data corresponding to the target rendering content with a higher rendering priority to the first terminal, which will not be repeated here. The solution provided in the embodiment of the present application sends the above data to the first terminal, so that the first terminal does not need to process all the data of the multiple scene image frames, and can run the scene progress of the target virtual scene from the initial progress to the current scene progress. The processed data is less, which can improve the efficiency of running the target virtual scene to the current scene progress. Moreover, when the target virtual scene runs to the current scene progress, the first terminal can present the situation in the target virtual scene, and the target rendering content is displayed in the target virtual scene, so as to avoid users from performing erroneous operations due to not seeing the skill special effects in the target virtual scene.

[0128] It should be noted that each time the target virtual object joins the target virtual scene midway, the first terminal must quickly chase the frame. Therefore, the data of the multiple scene image frames may include the initial settings of the target virtual scene, that is, the data of the target virtual scene when the scene progress is the initial progress. For the first terminal, in addition to loading the target virtual object, it is also necessary to load at least one first virtual object in the target virtual scene. In order to enable the first terminal to distinguish the virtual objects to be loaded and load the virtual objects at the right time, the server can mark the target virtual object and the at least one first virtual object. Different virtual objects may join the target virtual scene at different times. The server marks the virtual object according to the time when the virtual object joins the target virtual scene, which can be divided into the following five situations.

[0129] In the first case, the virtual object is in the target virtual scene from the time when the scene progress of the target virtual scene is the initial progress, that is, the target virtual scene is created to the current moment. Accordingly, for any first virtual object that exists when the scene progress of the target virtual scene is the initial progress, the server marks the virtual object with a first mark. The first mark is used to indicate that the first virtual object has always existed in the target virtual scene and has never left. Then, the first terminal needs to load the first virtual object when the scene progress of the target virtual scene is the initial progress.

[0130] The second case is a virtual object that exists when the target virtual scene is created and requests to join the target virtual scene at the current moment. Since the virtual object exists when the virtual game is created, the server marks the virtual object with a first mark. When the virtual object leaves the target virtual scene and requests to join the target virtual scene again, the server modifies the first mark. Take the target virtual object as an example. Accordingly, in response to the midway joining request of the target virtual object, it is determined whether the target virtual object exists in the target virtual scene when the scene progress is the initial progress, that is, whether the target virtual object is the above-mentioned first virtual object. When the target virtual object exists in the target virtual scene when the scene progress is the initial progress, that is, when the target virtual object is the first virtual object, the server modifies the loading mark of the target virtual object from the first mark to the second mark. The second mark is used to indicate that the target virtual object has left the target virtual scene and joins the target virtual scene this time. Among them, joining the target virtual scene this time means joining when the target virtual scene is at the target progress. Then, the first terminal needs to load the target virtual object when the scene progress of the target virtual scene is the initial progress, remove the target virtual object when the target virtual object leaves the target virtual scene, and load the target virtual object again when the scene progress of the target virtual scene is the target progress. It should be noted that the target virtual object can join and leave the target virtual scene multiple times, and this application is explained when the loading mark of the target virtual object is the first mark. Optionally, the loading mark of the target virtual object can also be other marks, see below.

[0131] In the third case, a virtual object that does not exist when the target virtual scene is created and requests to join the target virtual scene at the current moment. Since the virtual object does not exist when the target virtual scene is created, the server can mark the virtual object when the virtual object first requests to join the target virtual scene. Take the virtual object as an example, the target virtual object. Accordingly, in response to the midway joining request of the target virtual object, the server determines whether the target virtual object exists in the target virtual scene when the scene progress is the initial progress, that is, determines whether the target virtual object is the above-mentioned first virtual object. If the target virtual object does not exist in the target virtual scene when the scene progress is the initial progress, that is, when the target virtual object is not the first virtual object, the server uses a third mark to mark the target virtual object. The third mark is used for the target virtual object to join the target virtual scene this time. Then, the first terminal needs to load the target virtual object when the scene progress of the target virtual scene is the target progress.

[0132] The fourth case is a virtual object that exists when the target virtual scene is created, has left the target virtual scene, and requested to join the target virtual scene before the current moment. Since the virtual object exists when the target virtual game is created, the initial loading mark is the first mark, so when the virtual object leaves the target virtual scene and joins the target virtual scene again, the loading mark is modified to the second mark. When the target virtual object requests the target virtual scene, the server can modify the second mark of the virtual object again. Correspondingly, in response to the midway joining request of the target virtual object, the server obtains the loading mark of at least one second virtual object that existed in the target virtual scene, and the loading mark of the second virtual object is the first mark, the second mark or the third mark. Then, for any second virtual object, when the loading mark of the second virtual object is the second mark, the server modifies the loading mark of the second virtual object from the second mark to the fourth mark. Among them, the fourth mark is used to indicate that the second virtual object is not joining the target virtual scene this time. Then, the first terminal needs to load the target virtual object when the scene progress of the target virtual scene is the initial progress, and then remove and reload the target virtual object during the fast frame chasing process.

[0133] The fifth case is that a second virtual object that does not exist when the target virtual scene is created requests to join the target virtual scene before the current moment. When the second virtual object requests to join the target virtual scene for the first time, the server marks the second virtual object with a third mark. When the target virtual object requests to join the target virtual scene, the server can modify the third mark of the second virtual object. Accordingly, in the case where the loading mark of the second virtual object is the third mark, the server modifies the loading mark of the second virtual object from the third mark to the fifth mark. The fifth mark is used to indicate that the second virtual object is not joining the target virtual scene this time. Then, the first terminal needs to load the second virtual object when the second virtual object first applies to join the target virtual scene.

[0134] The solution provided in the embodiment of the present application marks the virtual objects associated with the target virtual scene, so that the first terminal can load the virtual objects at a corresponding time based on the loading marks carried by the virtual objects during the process of fast frame tracking based on data of multiple scene image frames, thereby ensuring that the first terminal can accurately restore the operation process of the target virtual scene, thereby improving the accuracy of loading the target virtual scene and the virtual objects in the target virtual scene.

[0135] It should be noted that the server can also store object information of virtual objects associated with the target virtual scene. The object information includes object identification, loading marks carried by virtual objects, and attribute information of virtual objects. All of this information belongs to the data of multiple scene image frames of the target virtual scene. Among them, the loading mark carried by the virtual object is used to indicate the timing of loading the virtual object by the first terminal. The embodiment of the present application does not limit the number of times a virtual object joins the target virtual scene and the number of times it leaves the target virtual scene during the operation of the target virtual scene.

[0136] 403. The first terminal runs the scene progress of the target virtual scene from the initial progress to the target progress based on the data of the multiple scene image frames. The target progress is the scene progress of the target virtual scene at present.

[0137] In an embodiment of the present application, the first terminal obtains data of multiple scene image frames of the target virtual scene from the server. The data of the multiple scene image frames may be all the data of the multiple scene image frames, or may be partial data after being processed by the server, and the embodiment of the present application does not limit this. Among them, the first terminal can quickly display multiple scene image frames arranged in time sequence, or the first terminal may not display the multiple scene image frames, but only display a loading interface (loading interface). At least one loading progress bar is displayed in the loading interface. Through the at least one loading progress bar, the progress of the first terminal loading the target virtual scene and the progress of at least one second terminal loading the object resources of the target virtual object can be intuitively displayed.

[0138] In some embodiments, the data of multiple scene image frames acquired by the first terminal is all the data of the multiple scene image frames. For any scene image frame, the data of the scene image frame includes a first category of data and a second category of data. Among them, the first category of data is used to execute rendering logic, and the second category of data is used to execute operation logic. Since the first terminal executes a large amount of operation logic and rendering logic in a short period of time, the first terminal will load virtual scenes and virtual objects at a slower speed, resulting in a longer time for the first terminal and other terminals to synchronize, thereby reducing the user experience. Therefore, the first terminal can select part of the data from all the data of multiple scene image frames to load the target virtual scene. The first terminal loads the target virtual scene in the following four ways.

[0139] Loading method 1: if each scene image frame is not displayed during the fast frame tracking process, it is not necessary to render the scene image frame. The first terminal can obtain the second type of data for executing the operation logic to load the target virtual scene, so that the scene progress of the target virtual scene runs from the initial progress to the target progress. Accordingly, the first terminal loads the target virtual scene when the scene progress is the initial progress. Then, the first terminal obtains the second type of data of multiple scene image frames from the data of multiple scene image frames according to the attribute information of the data. Then, the first terminal runs the scene progress of the target virtual scene from the initial progress to the target progress based on the second type of data of multiple scene image frames. Among them, the attribute information of the data is used to indicate the purpose of the data, that is, to indicate that the data is used to execute rendering logic or operation logic. The solution provided in the embodiment of the present application only needs to process the second type of data of the multiple scene image frames, and the scene progress of the target virtual scene can be run from the initial progress to the current scene progress. Since the processed data is less, the efficiency of running the target virtual scene to the current scene progress can be improved.

[0140] Loading method 2: If the first terminal does not execute the rendering logic at all, the special effects of the skills released by the virtual object in the target virtual scene when the fast frame chasing is about to end cannot be presented, and the user may perform misoperation because he cannot see the special effects of the skills, such as manipulating the target virtual object to enter the range of the special effects of the skills, thereby causing the target virtual object to be damaged. Therefore, the first terminal can obtain the first type of data of some scene image frames from the data of the multiple scene image frames on the basis of obtaining the second type of data of the multiple scene image frames. Accordingly, the first terminal obtains multiple target scene image frames within the target frame number range from the multiple scene image frames. Then, the first terminal obtains the first type of data of the multiple target scene image frames. Then, based on the first type of data of the multiple target scene image frames and the second type of data of the multiple scene image frames, the first terminal runs the scene progress of the target virtual scene from the initial progress to the target progress. Among them, the target frame number range is 60 frames, 90 frames or 120 frames that are ranked later in the multiple scene image frames, and the embodiment of the present application does not limit this. The solution provided in the embodiment of the present application enables the first terminal to render based on the first category data of multiple target scene image frames by acquiring the second category data of multiple scene image frames and the first category data of multiple target scene image frames that are sorted later, so that when the target virtual scene runs to the current scene progress, the first terminal can present the situation in the target virtual scene, thereby avoiding the user performing erroneous operations due to the first terminal not presenting the skill effects of skills released by other virtual objects.

[0141] Loading mode three, there may be skill effects with a long duration in the target virtual scene, and the skill effects may still exist after the target virtual object is loaded. If these skill effects are not rendered, the skill effects cannot be presented after the fast frame chasing ends. Therefore, the first terminal can also obtain data corresponding to the rendering content with a higher priority on the basis of obtaining the second type of data of multiple scene image frames. The rendering content with a higher priority is the content that needs to be rendered. Accordingly, the first terminal determines multiple rendering contents based on the data of multiple scene image frames. Then, the first terminal obtains data corresponding to the target rendering content with a rendering priority higher than the target priority from the data of multiple scene image frames. Then, the first terminal runs the scene progress of the target virtual scene from the initial progress to the target progress based on the data corresponding to the target rendering content and the second type of data of multiple scene image frames. Among them, the data corresponding to the target rendering content is part of the data in the first type of data of the scene image frame where the target rendering content is located. The solution provided in the embodiment of the present application enables the first terminal to always present the target rendering content by obtaining the second type of data of multiple scene image frames and the data corresponding to the target rendering content with a higher rendering priority, so as to avoid the first terminal not presenting the target rendering content, causing the user to perform an erroneous operation.

[0142] Loading method four, the first terminal can also simultaneously obtain the second type of data of multiple scene image frames, the first type of data of multiple target scene image frames that are sorted later, and the data corresponding to the target rendering content with a higher rendering priority from the data of multiple scene image frames, so as to run the scene progress of the target virtual scene from the initial progress to the target progress based on these data, which will not be repeated here. The solution provided by the embodiment of the present application obtains the above data from all the data of multiple scene image frames, so that the first terminal does not need to process all the data of the multiple scene image frames, and can run the scene progress of the target virtual scene from the initial progress to the current scene progress. The processed data is less, which can improve the efficiency of running the target virtual scene to the current scene progress. Moreover, when the target virtual scene runs to the current scene progress, the first terminal can present the situation in the target virtual scene, and the target rendering content is displayed in the target virtual scene, so as to avoid the user from performing erroneous operations due to not seeing the skill special effects in the target virtual scene.

[0143] In some embodiments, the first terminal can render the target virtual scene in two ways: partial rendering and full rendering. Accordingly, the first terminal displays the target virtual scene when the scene progress is the initial progress. Then, the first terminal divides the data of multiple scene image frames into a first frame data group and a second frame data group according to the time sequence. Then, the first terminal renders the target virtual scene in a partial rendering manner based on the first frame data group. Then, the first terminal renders the target virtual scene in a full rendering manner based on the second frame data group, so that the target virtual scene is loaded to the target progress. Among them, the first frame data group is earlier in time than the second frame data group. The full rendering method can render more details than the partial rendering method. The partial rendering method may only render the skill special effects with a higher rendering priority in the target virtual scene, or it may only render the outlines of virtual objects and scene elements in the target virtual scene, and the embodiments of the present application are not limited to this. The solution provided in the embodiment of the present application can run the scene progress of the target virtual scene from the initial progress to the current scene progress by rendering the target virtual scene in two ways, namely partial rendering and full rendering. Since less data is processed, the efficiency of running the target virtual scene to the current scene progress can be improved.

[0144] In some embodiments, the virtual object associated with the target virtual scene carries a loading mark, and the first terminal can load the virtual object based on the loading mark. Accordingly, the first terminal determines the loading mark of at least one virtual object associated with the target virtual scene based on the data of multiple scene image frames. Then, in the presence of a target loading mark, in the target virtual scene where the scene progress is the initial progress, a virtual object with a target loading mark is loaded. Among them, the target loading mark is used to indicate that the virtual object exists in the target virtual scene when the scene progress is the initial progress. The target loading mark can be a first mark, a second mark or a fourth mark, and the embodiment of the present application does not limit this. The solution provided in the embodiment of the present application, through the loading mark carried by the virtual object, loads the virtual object at the corresponding time, ensuring that the first terminal can accurately restore the operation process of the target virtual scene, thereby improving the accuracy of loading the target virtual scene and the virtual objects in the target virtual scene.

[0145] It should be noted that when the first terminal runs the target virtual scene to the target progress, the first terminal can send an object loading request to the server, the object loading request carries the object identifier of the target virtual object, and the first terminal requests the server to allow loading of the target virtual object.

[0146] It should be noted that, in the process of the first terminal running the scene progress of the target virtual scene from the initial progress to the target progress, new scene image frame data will be generated in the target virtual scene. The first terminal can receive the new scene image frame data sent by the server. After the first terminal runs the target virtual scene to the target progress, the first terminal continues to load the target virtual scene based on the new scene image frame data.

[0147] 404. In response to the first terminal running the scene progress of the target virtual scene to the target progress, the server sends an object loading instruction carrying an object identifier to the first terminal and at least one second terminal, so that the first terminal and the at least one second terminal load the target virtual object in the target virtual scene.

[0148] In an embodiment of the present application, a server receives an object loading request sent by a first terminal. Based on the object loading request, the server determines that the first terminal runs the scene progress of the target virtual scene to the target progress. Then, the server sends an object loading instruction to the first terminal and at least one second terminal. The object loading instruction carries the object identifier of the target virtual object, so that the first terminal and at least one second terminal respectively create the target virtual object according to the object identifier. Among them, the server can send an object loading instruction to the first terminal and at least one second terminal at the same time, in which case the object loading instruction is used to instruct the terminal to create the target virtual object when receiving the object loading instruction; or it can send an object loading instruction to the first terminal and at least one second terminal at different times, in which case the object loading instruction is used to instruct the terminal to create the target virtual object in the scene image frame indicated by the object loading instruction, and the embodiment of the present application does not limit this.

[0149] It should be noted that, when the server receives the mid-way joining request sent by the first terminal, the server can forward the object identifier of the target virtual object carried in the mid-way joining request to at least one second terminal to notify the at least one second terminal that the target virtual object requests to join the target virtual scene. The at least one second terminal can preload the object resource corresponding to the target virtual object based on the object identifier. Then, the above-mentioned object loading instruction may not carry the object identifier of the target virtual object.

[0150] 405. The first terminal loads the target virtual object based on the object loading instruction.

[0151] In an embodiment of the present application, loading a target virtual object includes two steps: creating a target virtual object and displaying the target virtual object. After the target virtual object is created, the first terminal can obtain a special effect resource of the target virtual object from a local location based on the object identifier of the target virtual object. The special effect resource is used to present the target virtual object and join the target virtual scene. Then, the first terminal displays the special effect resource and the target virtual object in the target virtual scene.

[0152] In some embodiments, before the scene progress of the target virtual scene is loaded to the target progress, the first terminal can also preload the target virtual object in the target virtual scene. When the scene progress of the target virtual scene is loaded to the target progress, the preloaded target virtual object is displayed. Among them, the preloaded content can be a three-dimensional model of the target virtual object, which is not limited by the embodiment of the present application. The solution provided by the embodiment of the present application can increase the speed of loading the target virtual object by preloading the target virtual object in the process of loading the scene progress of the target virtual scene from the initial progress to the target progress, thereby improving the efficiency of the target virtual object joining the target virtual scene midway.

[0153] 406. The second terminal loads the target virtual object based on the object loading instruction.

[0154] In the embodiment of the present application, taking any second terminal as an example, after receiving the object loading instruction, the second terminal creates the target virtual object. After the target virtual object is created, the second terminal obtains the special effect resource of the target virtual object from the local based on the object identifier of the target virtual object. Then, the special effect resource and the target virtual object are displayed in the target virtual scene.

[0155] It should be noted that the step numbers in the embodiments of the present application are for ease of description and do not limit the order in which the steps are executed. For example, step 405 can be executed before step 406, or after step 406, or can be executed synchronously with step 406. The embodiments of the present application do not limit this.

[0156] 407. The first terminal sends an object control request to the server.

[0157] In the embodiment of the present application, the object control request carries the object identifier of the target virtual object, and is used to request the target virtual object to be switched to a controllable state.

[0158] 408. The second terminal sends an object control request to the server.

[0159] In the embodiment of the present application, the object control request carries the object identifier of the target virtual object, and is used to request the target virtual object to be switched to a controllable state.

[0160] It should be noted that the step numbers in the embodiments of the present application are for ease of description and do not limit the order in which the steps are executed. For example, step 407 can be executed before step 408, or after step 408, or can be executed simultaneously with step 408. The embodiments of the present application do not limit this.

[0161] 409. In response to receiving the object control instruction sent by the first terminal and the at least one second terminal, the server sends a confirmation control instruction to the first terminal and the at least one second terminal, where the confirmation control instruction is used to instruct to switch the target virtual object to a controllable state.

[0162] In the embodiment of the present application, only when the object control instruction sent by the first terminal and the object control instruction sent by at least one second terminal are received, the server will send a confirmation control instruction to the first terminal and the at least one second terminal, and the object control instruction instructs the first terminal and the at least one second terminal to switch the target virtual object from an uncontrollable state to a controllable state at the same time to ensure synchronization. Among them, the server can send an object control instruction to the first terminal and the at least one second terminal at the same time, and the object control instruction is used to instruct the terminal to switch the target virtual object from an uncontrollable state to a controllable state when receiving the object control instruction; it can also send an object control instruction to the first terminal and the at least one second terminal at different times, and the object control instruction is used to instruct the terminal to switch the target virtual object from an uncontrollable state to a controllable state when displaying the scene image frame indicated by the object control instruction. The embodiment of the present application does not limit this.

[0163] 410. The first terminal displays a target virtual object executing a game task in a target virtual scene.

[0164] In an embodiment of the present application, in response to receiving a confirmation control instruction sent by the server, the first terminal switches the target virtual object to a controllable state. Then, the first terminal manipulates the target virtual object to perform a game task in the target virtual scene. Since the multiple virtual scenes of the virtual game are independent of each other, the multiple game tasks corresponding to the multiple virtual scenes are also independent of each other. When the target virtual object is in a controllable state, the target virtual object can attack other virtual objects and will also be attacked by other virtual objects.

[0165] 411. The second terminal displays the target virtual object executing the game task in the target virtual scene.

[0166] In an embodiment of the present application, in response to receiving a confirmation control instruction sent by the server, the second terminal switches the target virtual object to a controllable state. Then, the second terminal displays the target virtual object performing various activities in the target virtual scene. When the target virtual object is in a controllable state, the target virtual object can interact with other virtual objects under the control of the user account.

[0167] It should be noted that step 410 may be executed before step 411, or after step 411, or may be executed synchronously with step 411, and the embodiment of the present application does not limit this.

[0168] In order to more clearly describe the process in which the target virtual object requests to join the target virtual scene, the process is further described below with reference to the accompanying drawings. Figure 6is an interactive flow chart of adding a target virtual object to a target virtual scene according to an embodiment of the present application. Figure 6 , the process of the target virtual object requesting to join the target virtual scene can be implemented by following steps 601 to 613. 601. When the target virtual object requests to join the target virtual scene, the server sends data of multiple scene image frames to the first terminal, and sends the object identification of the target virtual object to at least one second terminal. 602. Based on the data of the multiple scene image frames, the first terminal runs the scene progress of the target virtual scene from the initial progress to the target progress. 603. The at least one second terminal loads the object resource of the target virtual object based on the object identification. 604. When the first terminal runs the scene progress of the target virtual scene to the target progress, the first terminal sends an object loading request to the server. 605. For any second terminal, when the second terminal completes loading the object resource of the target virtual object, the second terminal sends an object loading request to the server. The object loading request carries the object identification of the target virtual object. 606. When receiving the object loading request sent by the first terminal and the object loading request sent by the at least one second terminal, the server sends an object loading instruction carrying the object identification to the first terminal and the at least one second terminal. 607. The first terminal loads the target virtual object based on the object loading instruction and displays the special effect resources of the target virtual object. 608. The second terminal loads the target virtual object based on the object loading instruction and displays the special effect resources of the target virtual object. 609. The first terminal sends an object control request to the server. 610. The second terminal sends an object control request to the server. 611. In response to receiving the object control instruction sent by the first terminal and at least one second terminal, the server sends a confirmation control instruction to the first terminal and at least one second terminal. 612. The first terminal displays that the target virtual object performs the game task in the target virtual scene. 613. The second terminal displays that the target virtual object performs the game task in the target virtual scene.

[0169] 412. In response to a leaving operation on a target virtual scene, the first terminal sends a scene leaving request, where the scene leaving request carries an object identifier of a target virtual object.

[0170] In an embodiment of the present application, by triggering a leave operation, the target virtual object can request to leave the target virtual scene. In response to the leave operation being triggered, the first terminal sends a scene leave request to the server. Since the scene leave request carries the object identifier of the target virtual object, the server can determine the virtual object that is to leave the target virtual scene.

[0171] 413. The server receives a scene leaving request for a target virtual scene sent by the first terminal, and sends a leaving verification instruction to the first terminal and at least one second terminal, where the leaving verification instruction is used to indicate whether a leaving object state of the target virtual object is a leaveable state.

[0172] In an embodiment of the present application, upon receiving a scene leaving request for a target virtual scene sent by a first terminal, the server sends a leaving verification instruction to the first terminal and at least one second terminal respectively. The leaving verification instruction carries the object identification of the target virtual object. Among them, the server can send a leaving verification instruction to the first terminal and at least one second terminal at the same time, and the leaving verification instruction is used to instruct the terminal to perform a verification when receiving the leaving verification instruction; it can also send a leaving verification instruction to the first terminal and at least one second terminal at different times, and the leaving verification instruction is used to instruct the terminal to perform a verification when displaying the scene image frame indicated by the leaving verification instruction, and the embodiment of the present application does not limit this. The first terminal and at least one second terminal verify the target virtual object based on the object identification. Among them, the virtual object controlled by the second terminal is any other virtual object in the target virtual scene except the target virtual object. The state that cannot be left is the state of being attacked, the state of joining the target virtual scene, or the state of releasing skills, etc., and the embodiment of the present application does not limit this.

[0173] It should be noted that, since the target virtual scene of the first terminal and the target virtual scene of at least one second terminal are synchronized, the server need not send a verification leave request to the at least one second terminal, but only needs to send a verification leave request to the first terminal, and when the first terminal determines that the target virtual object is in a state where it can leave, the target virtual object is allowed to leave the target virtual scene. Furthermore, after the target virtual object leaves the target virtual scene, the server can synchronize with the at least one second terminal.

[0174] 414. In response to the leaving object state of the target virtual object being a leaveable state, the first terminal sends an object settlement request to the server.

[0175] In an embodiment of the present application, in response to a leaving operation on a target virtual scene, the first terminal determines the leaving object state of the target virtual object. Then, in response to the leaving object state being a leaveable state, the first terminal sends an object settlement request to the server. The object settlement request is used to request the server to instruct the first terminal to settle the attribute information of the target virtual object at the current moment.

[0176] 415. In response to receiving the object settlement request sent by the first terminal, the server sends an object settlement instruction to the first terminal and at least one second terminal, where the object settlement instruction is used to instruct the first terminal to report the current attribute information of the target virtual object and instruct at least one second terminal to remove the target virtual object from the target virtual scene.

[0177] In an embodiment of the present application, the server may send an object settlement instruction to the first terminal and at least one second terminal at the same time, and the object settlement instruction is used to instruct the terminal to report the current attribute information of the target virtual object when receiving the object settlement instruction; or the server may send an object settlement instruction to the first terminal and at least one second terminal at different times, and the object settlement instruction is used to instruct the terminal to report the current attribute information of the target virtual object when displaying the scene image frame indicated by the object settlement instruction, and the embodiment of the present application does not limit this. The attribute information of the target virtual object includes information such as the virtual life value, attack power and defense power of the target virtual object. When the first terminal receives the object settlement instruction, the first terminal can settle the attribute information of the target virtual object. At this time, the attribute information of the target virtual object will not change again. The first terminal settles according to the attribute information of the target virtual object when joining the target virtual scene and the part consumed in the target virtual scene. When at least one second terminal receives the object settlement instruction, the at least one second terminal removes the target virtual object from the target virtual scene, that is, no longer displays the target virtual object.

[0178] 416. The first terminal sends current attribute information of the target virtual object to the server.

[0179] In an embodiment of the present application, the first terminal uploads the attribute information to the server, and the server stores the attribute information of the target virtual object. When the target virtual object joins other virtual scenes again, the server can synchronize the attribute information of the target virtual object to other terminals associated with the virtual scene. At this time, the attribute information of the target virtual object serves as the initial information for the target virtual object to join the virtual scene. The first terminal controls the target virtual object to leave the target virtual scene, and the first terminal does not display the target virtual scene.

[0180] 417. The second terminal removes the target virtual object from the target virtual scene.

[0181] In the embodiment of the present application, the second terminal removes the target virtual object from the target virtual scene, and the second terminal still displays the target virtual scene.

[0182] In order to more clearly describe the process of the target virtual object leaving the target virtual scene, the process is further described below with reference to the accompanying drawings. Figure 7is an interactive flow chart of a target virtual object leaving a target virtual scene according to an embodiment of the present application. Figure 7 , the process of the target virtual object requesting to leave the target virtual scene can be implemented by following steps 701 to 708. 701. In response to the leaving operation of the target virtual scene, the first terminal sends a scene leaving request. 702. When receiving the scene leaving request sent by the first terminal, the server sends a leaving verification instruction to the first terminal and at least one second terminal. 703. The first terminal verifies whether the leaving object state of the target virtual object is a leaveable state, and if it is a leaveable state, the target virtual object is set to an uncontrollable state. 704. The second terminal verifies whether the leaving object state of the target virtual object is a leaveable state, and if it is a leaveable state, the target virtual object is set to an uncontrollable state. 705. In response to the leaving object state of the target virtual object being a leaveable state, the first terminal sends an object settlement request to the server. 706. In the case of receiving the object settlement request sent by the first terminal, the server sends an object settlement instruction to the first terminal and at least one second terminal. 707. The first terminal sends the current attribute information of the target virtual object to the server. 708. The second terminal removes the target virtual object from the target virtual scene. At this time, the target virtual object officially leaves the target virtual scene.

[0183] The embodiment of the present application provides a synchronization scheme for virtual scenes. When a target virtual object controlled by a first terminal requests to join a target virtual scene, data of all scene image frames of the target virtual scene during the process from the scene progress being an initial progress to the target progress is returned to the first terminal, so that the first terminal can quickly chase frames based on the acquired data, so that the first terminal can run the scene progress of the target virtual scene from the initial progress to the target progress. When the target virtual scene of the first terminal runs to the target progress, an object loading instruction carrying an object identifier is sent to the first terminal and at least one terminal where the virtual object in the target virtual scene is located, so that each terminal can load the target virtual object in the target virtual scene at the target progress, thereby realizing synchronous display of the target virtual scene on each terminal, so that the timing of the target virtual object joining the virtual scene in the virtual game is not restricted. Regardless of when the virtual object requests to join the virtual scene in the virtual game, the consistency of the display of the target virtual scene on each terminal can be guaranteed, thereby improving the flexibility of participating in the virtual game.

[0184] Figure 8 is a structural diagram of a virtual scene synchronization device provided according to an embodiment of the present application. The device is used to execute the steps of the virtual scene synchronization method described above, see Figure 8 The virtual scene synchronization device includes: a receiving module 801 and a sending module 802.

[0185] The receiving module 801 is used to receive a midway joining request for a target virtual scene sent by a first terminal, the midway joining request carries an object identifier of a target virtual object, the target virtual object is a virtual object controlled by the first terminal, the target virtual scene uses frame synchronization to perform data synchronization, and the target virtual scene includes a virtual object controlled by at least one second terminal;

[0186] The sending module 802 is used to send data of multiple scene image frames of the target virtual scene to the first terminal, where the multiple scene image frames are all scene image frames in the running process of the target virtual scene, and the data of the multiple scene image frames runs the scene progress of the target virtual scene from the initial progress to the target progress, where the target progress is the scene progress of the target virtual scene at present;

[0187] The sending module 802 is also used to send an object loading instruction carrying an object identifier to the first terminal and at least one second terminal in response to the first terminal running the scene progress of the target virtual scene to the target progress, so that the first terminal and at least one second terminal load the target virtual object in the target virtual scene.

[0188] In some embodiments, Fig. 9 is a structural diagram of another virtual scene synchronization device provided according to an embodiment of the present application. Fig. 9 The sending module 802 is used to obtain data of multiple scene image frames of the target virtual scene, the data of the scene image frames include first-category data and second-category data, the first-category data is used to execute rendering logic, and the second-category data is used to execute operation logic; and send the second-category data of multiple scene image frames to the first terminal.

[0189] In some embodiments, see Fig. 9 , the device further comprises:

[0190] A first acquisition module 803 is used to acquire a plurality of target scene image frames within a target frame number range from a plurality of scene image frames;

[0191] The sending module 802 is further configured to send the first type of data of multiple target scene image frames to the first terminal.

[0192] In some embodiments, see Fig. 9 , the device further comprises:

[0193] A determination module 804, configured to determine a plurality of rendering contents based on data of a plurality of scene image frames;

[0194] The second acquisition module 805 is used to acquire data corresponding to a target rendering content whose rendering priority is higher than the target priority from the data of the multiple scene image frames, where the data corresponding to the target rendering content is part of the first category of data of the scene image frame where the target rendering content is located;

[0195] The sending module 802 is further configured to send data corresponding to the target rendering content to the first terminal.

[0196] In some embodiments, see Fig. 9 The sending module 802 is also used to send a confirmation control instruction to the first terminal and the at least one second terminal in response to receiving an object control request sent by the first terminal and the at least one second terminal, where the confirmation control instruction is used to instruct to switch the target virtual object to a controllable state.

[0197] In some embodiments, see Fig. 9 The receiving module 801 is further configured to receive a scene leaving request for a target virtual scene sent by the first terminal, where the scene leaving request carries an object identifier of a target virtual object;

[0198] The sending module 802 is further used to send a leaving verification instruction to the first terminal and at least one second terminal, where the leaving verification instruction is used to indicate whether the leaving object state of the target virtual object is a leaving state;

[0199] The sending module 802 is also used to send an object settlement instruction to the first terminal and at least one second terminal in response to receiving an object settlement request sent by the first terminal. The object settlement instruction is used to instruct the first terminal to report the current attribute information of the target virtual object and instruct at least one second terminal to remove the target virtual object from the target virtual scene.

[0200] In some embodiments, see Fig. 9 , the device further comprises:

[0201] The marking module 806 is used to mark any first virtual object that exists when the scene progress of the target virtual scene is the initial progress with a first mark, where the first mark is used to indicate that the first virtual object always exists in the target virtual scene.

[0202] In some embodiments, see Fig. 9 The marking module 806 is further used to respond to the midway joining request of the target virtual object, and when the target virtual object is the first virtual object, modify the loading mark of the target virtual object from the first mark to the second mark, where the second mark is used to indicate that the target virtual object has left the target virtual scene and joins the target virtual scene this time;

[0203] The marking module 806 is further configured to mark the target virtual object with a third mark when the target virtual object is not the first virtual object, and the third mark is configured to indicate that the target virtual object is added to the target virtual scene this time.

[0204] In some embodiments, see Fig. 9 , the device further comprises:

[0205] A third acquisition module 807 is used to obtain a loading mark of at least one second virtual object that existed in the target virtual scene in response to the midway joining request of the target virtual object, where the mark of the second virtual object is the first mark, the second mark or the third mark;

[0206] The marking module 806 is further configured to, for any second virtual object, modify the loading mark of the second virtual object to a fourth mark when the loading mark of the second virtual object is the second mark, wherein the fourth mark is used to indicate that the second virtual object is not added to the target virtual scene this time;

[0207] The marking module 806 is further configured to modify the loading mark of the second virtual object to a fifth mark when the loading mark of the second virtual object is the third mark, wherein the fifth mark is used to indicate that the second virtual object is not added to the target virtual scene this time.

[0208] The embodiment of the present application provides a virtual scene synchronization device. When a target virtual object controlled by a first terminal requests to join a target virtual scene, the device returns data of all scene image frames of the target virtual scene during the process from the scene progress being an initial progress to the target progress to the first terminal, so that the first terminal can quickly chase frames based on the acquired data, so that the first terminal can run the scene progress of the target virtual scene from the initial progress to the target progress. When the target virtual scene of the first terminal runs to the target progress, an object loading instruction carrying an object identifier is sent to the first terminal and at least one terminal where the virtual object in the target virtual scene is located, so that each terminal can load the target virtual object in the target virtual scene at the target progress, thereby realizing synchronous display of the target virtual scene on each terminal, so that the timing of the target virtual object joining the virtual scene in the virtual game is not restricted. No matter when the virtual object requests to join the virtual scene in the virtual game, the consistency of the display of the target virtual scene on each terminal can be guaranteed, thereby improving the flexibility of participating in the virtual game.

[0209] It should be noted that the virtual scene synchronization device provided in the above embodiment only uses the division of the above functional modules as an example when running an application. In actual applications, the above functions can be assigned to different functional modules as needed, 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. In addition, the virtual scene synchronization device provided in the above embodiment and the virtual scene synchronization method embodiment belong to the same concept, and the implementation process thereof is shown in the method embodiment, which will not be repeated here.

[0210] Fig.10 is a schematic diagram of the structure of a virtual scene display device provided according to an embodiment of the present application. The device is used to execute the steps of the above-mentioned virtual scene display method, see Fig.10 The display device of the virtual scene includes: an acquisition module 1001, an operation module 1002 and a loading module 1003.

[0211] An acquisition module 1001 is used for acquiring data of a plurality of scene image frames of a target virtual scene in response to a midway joining operation of the target virtual scene, wherein the target virtual scene is synchronized in a frame synchronization manner, and the plurality of scene image frames are all scene image frames in the running process of the target virtual scene;

[0212] An operation module 1002 is used to operate the scene progress of the target virtual scene from an initial progress to a target progress based on data of a plurality of scene image frames, where the target progress is the scene progress of the target virtual scene at present;

[0213] The loading module 1003 is used to load a target virtual object in a target virtual scene.

[0214] In some embodiments, Fig.11 is a schematic diagram of the structure of another virtual scene display device provided according to an embodiment of the present application. Fig.11 , the data of the scene image frame includes a first type of data and a second type of data, the first type of data is used to execute rendering logic, and the second type of data is used to execute operation logic;

[0215] The operation module 1002 includes:

[0216] The loading unit 1101 is used to load the target virtual scene when the scene progress is the initial progress;

[0217] An acquiring unit 1102 is used to acquire second type data of the plurality of scene image frames from the data of the plurality of scene image frames;

[0218] The running unit 1103 is used to run the scene progress of the target virtual scene from the initial progress to the target progress based on the second type of data of the multiple scene image frames.

[0219] In some embodiments, see Fig.11 , an operating unit 1103 is used to obtain multiple target scene image frames within a target frame number range from multiple scene image frames; obtain first-category data of the multiple target scene image frames; and based on the first-category data of the multiple target scene image frames and the second-category data of the multiple scene image frames, run the scene progress of the target virtual scene from the initial progress to the target progress.

[0220] In some embodiments, see Fig.11 , an operating unit 1103 is used to determine multiple rendering contents based on data of multiple scene image frames; obtain data corresponding to a target rendering content whose rendering priority is higher than a target priority from the data of the multiple scene image frames, the data corresponding to the target rendering content being part of the first category data of the scene image frame where the target rendering content is located; based on the data corresponding to the target rendering content and the second category data of the multiple scene image frames, run the scene progress of the target virtual scene from the initial progress to the target progress.

[0221] In some embodiments, see Fig.11 , the device further comprises:

[0222] A first determination module 1004 is used to determine a loading mark of at least one virtual object associated with a target virtual scene based on data of a plurality of scene image frames;

[0223] The loading module 1003 is also used to load a virtual object with a target loading mark in a target virtual scene with an initial progress when there is a target loading mark, and the target loading mark is used to indicate that the virtual object exists when the scene progress of the target virtual scene is the initial progress.

[0224] In some embodiments, see Fig.11 , running module 1002 is used to display the target virtual scene when the scene progress is the initial progress; divide the data of multiple scene image frames into a first frame data group and a second frame data group according to the time sequence; based on the first frame data group, use a partial rendering method to render the target virtual scene; based on the second frame data group, use a full rendering method to render the target virtual scene, so that the target virtual scene is loaded to the target progress.

[0225] In some embodiments, see Fig.11 The loading module 1003 is used to preload the target virtual object in the target virtual scene before the scene progress of the target virtual scene is loaded to the target progress.

[0226] In some embodiments, see Fig.11 , the device further comprises:

[0227] A second determining module 1005 is used to determine a leaving object state of a target virtual object in response to a leaving operation on the target virtual scene;

[0228] The sending module 1006 is used to send the current attribute information of the target virtual object to the server in response to the leaving object state being the leaveable state.

[0229] An embodiment of the present application provides a display device for a virtual scene. When a target virtual object controlled by a first terminal requests to join a target virtual scene, data of all scene image frames of the target virtual scene during a process in which the scene progress is from an initial progress to a target progress is obtained, so that the first terminal can quickly chase frames based on the obtained data to realize running the scene progress of the target virtual scene from the initial progress to the target progress, and then load the target virtual object in the target virtual scene, so that the scene progress of the target virtual scene displayed by the first terminal is synchronized with the scene progress of the target virtual scene displayed by other terminals, so that the timing of the target virtual object joining the virtual scene in the virtual game is not restricted, and no matter when the virtual object requests to join the virtual scene in the virtual game, the consistency of the display of the target virtual scene on each terminal can be guaranteed, thereby improving the flexibility of participating in the virtual game.

[0230] It should be noted that the display device for virtual scenes provided in the above embodiments only uses the division of the above functional modules as an example when running an application program. In actual applications, the above functional distribution can be completed by different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the display device for virtual scenes provided in the above embodiments and the display method embodiment of virtual scenes belong to the same concept, and the implementation process thereof is shown in the method embodiment, which will not be repeated here.

[0231] In the embodiments of the present application, the computer device can be configured as a terminal or a server. When the computer device is configured as a terminal, the terminal can be used as the execution subject to implement the technical solution provided in the embodiments of the present application. When the computer device is configured as a server, the server can be used as the execution subject to implement the technical solution provided in the embodiments of the present application. The technical solution provided in the present application can also be implemented through interaction between the terminal and the server. The embodiments of the present application are not limited to this.

[0232] Fig.121 is a schematic diagram of the structure of a terminal 1200 provided according to an embodiment of the present application. The terminal 1200 may be a portable mobile terminal, such as a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III), an MP4 player (Moving Picture Experts Group Audio Layer IV), a laptop computer or a desktop computer. The terminal 1200 may also be referred to as a user device, a portable terminal, a laptop terminal, a desktop terminal or other names.

[0233] Typically, the terminal 1200 includes: a processor 1201 and a memory 1202 .

[0234] The processor 1201 may include one or more processing cores, such as a 4-core processor, an 8-core processor, etc. The processor 1201 may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). The processor 1201 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 1201 may be integrated with a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 1201 may also include an AI (Artificial Intelligence) processor, which is used to process computing operations related to machine learning.

[0235] The memory 1202 may include one or more computer-readable storage media, which may be non-transitory. The memory 1202 may also include a high-speed random access memory and a non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 1202 is used to store at least one computer program, which is used to be executed by the processor 1201 to implement the virtual scene synchronization method or virtual scene display method provided in the method embodiment of the present application.

[0236] In some embodiments, the terminal 1200 may further optionally include: a peripheral device interface 1203 and at least one peripheral device. The processor 1201, the memory 1202 and the peripheral device interface 1203 may be connected via a bus or a signal line. Each peripheral device may be connected to the peripheral device interface 1203 via a bus, a signal line or a circuit board. Specifically, the peripheral device includes: at least one of a radio frequency circuit 1204, a display screen 1205, a camera assembly 1206, an audio circuit 1207 and a power supply 1208.

[0237] The peripheral device interface 1203 may be used to connect at least one peripheral device related to I / O (Input / Output) to the processor 1201 and the memory 1202. In some embodiments, the processor 1201, the memory 1202, and the peripheral device interface 1203 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 1201, the memory 1202, and the peripheral device interface 1203 may be implemented on a separate chip or circuit board, which is not limited in this embodiment.

[0238] The radio frequency circuit 1204 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The radio frequency circuit 1204 communicates with the communication network and other communication devices through electromagnetic signals. The radio frequency circuit 1204 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals into electrical signals. In some embodiments, the radio frequency circuit 1204 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, and the like. The radio frequency circuit 1204 can communicate with other terminals through at least one wireless communication protocol. The wireless communication protocol includes, but is not limited to: the World Wide Web, a metropolitan area network, an intranet, various generations of mobile communication networks (2G, 3G, 4G and 5G), a wireless local area network and / or a WiFi (Wireless Fidelity) network. In some embodiments, the radio frequency circuit 1204 may also include circuits related to NFC (Near Field Communication), which is not limited in this application.

[0239] The display screen 1205 is used to display a UI (User Interface). The UI may include graphics, text, icons, videos, and any combination thereof. When the display screen 1205 is a touch display screen, the display screen 1205 also has the ability to collect touch signals on the surface or above the surface of the display screen 1205. The touch signal can be input to the processor 1201 as a control signal for processing. At this time, the display screen 1205 can also be used to provide virtual buttons and / or virtual keyboards, also known as soft buttons and / or soft keyboards. In some embodiments, the display screen 1205 can be one, set on the front panel of the terminal 1200; in other embodiments, the display screen 1205 can be at least two, respectively set on different surfaces of the terminal 1200 or in a folding design; in other embodiments, the display screen 1205 can be a flexible display screen, set on a curved surface or a folding surface of the terminal 1200. Even, the display screen 1205 can also be set to a non-rectangular irregular shape, that is, a special-shaped screen. The display screen 1205 can be made of materials such as LCD (Liquid Crystal Display) and OLED (Organic Light-Emitting Diode).

[0240] The camera assembly 1206 is used to capture images or videos. In some embodiments, the camera assembly 1206 includes a front camera and a rear camera. Typically, the front camera is disposed on the front panel of the terminal, and the rear camera is disposed on the back of the terminal. In some embodiments, there are at least two rear cameras, which are any one of a main camera, a depth of field camera, a wide-angle camera, and a telephoto camera, so as to realize the fusion of the main camera and the depth of field camera to realize the background blur function, the fusion of the main camera and the wide-angle camera to realize the panoramic shooting and VR (Virtual Reality) shooting function or other fusion shooting functions. In some embodiments, the camera assembly 1206 may also include a flash. The flash may be a monochrome temperature flash or a dual-color temperature flash. A dual-color temperature flash refers to a combination of a warm light flash and a cold light flash, which can be used for light compensation at different color temperatures.

[0241] The audio circuit 1207 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, and convert the sound waves into electrical signals and input them into the processor 1201 for processing, or input them into the radio frequency circuit 1204 to achieve voice communication. For the purpose of stereo acquisition or noise reduction, there may be multiple microphones, which are respectively arranged at different parts of the terminal 1200. The microphone may also be an array microphone or an omnidirectional acquisition microphone. The speaker is used to convert the electrical signal from the processor 1201 or the radio frequency circuit 1204 into sound waves. The speaker may be a traditional film speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can not only convert the electrical signal into sound waves audible to humans, but also convert the electrical signal into sound waves inaudible to humans for purposes such as ranging. In some embodiments, the audio circuit 1207 may also include a headphone jack.

[0242] The power supply 1208 is used to power various components in the terminal 1200. The power supply 1208 can be an alternating current, a direct current, a disposable battery, or a rechargeable battery. When the power supply 1208 includes a rechargeable battery, the rechargeable battery can be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is a battery charged through a wired line, and a wireless rechargeable battery is a battery charged through a wireless coil. The rechargeable battery can also be used to support fast charging technology.

[0243] In some embodiments, the terminal 1200 further includes one or more sensors 1209 . The one or more sensors 1209 include, but are not limited to: an acceleration sensor 1210 , a gyroscope sensor 1211 , a pressure sensor 1212 , an optical sensor 1213 , and a proximity sensor 1214 .

[0244] The acceleration sensor 1210 can detect the magnitude of acceleration on the three coordinate axes of the coordinate system established by the terminal 1200. For example, the acceleration sensor 1210 can be used to detect the components of gravity acceleration on the three coordinate axes. The processor 1201 can control the display screen 1205 to display the user interface in a horizontal view or a vertical view according to the gravity acceleration signal collected by the acceleration sensor 1210. The acceleration sensor 1210 can also be used for collecting game or user motion data.

[0245] The gyro sensor 1211 can detect the body direction and rotation angle of the terminal 1200, and the gyro sensor 1211 can cooperate with the acceleration sensor 1210 to collect the user's 3D actions on the terminal 1200. The processor 1201 can implement the following functions based on the data collected by the gyro sensor 1211: motion sensing (such as changing the UI according to the user's tilt operation), image stabilization during shooting, game control, and inertial navigation.

[0246] The pressure sensor 1212 can be set on the side frame of the terminal 1200 and / or the lower layer of the display screen 1205. When the pressure sensor 1212 is set on the side frame of the terminal 1200, it can detect the user's holding signal of the terminal 1200, and the processor 1201 performs left and right hand recognition or shortcut operation according to the holding signal collected by the pressure sensor 1212. When the pressure sensor 1212 is set on the lower layer of the display screen 1205, the processor 1201 controls the operability controls on the UI interface according to the user's pressure operation on the display screen 1205. The operability controls include at least one of a button control, a scroll bar control, an icon control, and a menu control.

[0247] The optical sensor 1213 is used to collect the ambient light intensity. In one embodiment, the processor 1201 can control the display brightness of the display screen 1205 according to the ambient light intensity collected by the optical sensor 1213. Specifically, when the ambient light intensity is high, the display brightness of the display screen 1205 is increased; when the ambient light intensity is low, the display brightness of the display screen 1205 is reduced. In another embodiment, the processor 1201 can also dynamically adjust the shooting parameters of the camera assembly 1206 according to the ambient light intensity collected by the optical sensor 1213.

[0248] The proximity sensor 1214, also called a distance sensor, is usually arranged on the front panel of the terminal 1200. The proximity sensor 1214 is used to collect the distance between the user and the front of the terminal 1200. In one embodiment, when the proximity sensor 1214 detects that the distance between the user and the front of the terminal 1200 is gradually decreasing, the processor 1201 controls the display screen 1205 to switch from the screen-on state to the screen-off state; when the proximity sensor 1214 detects that the distance between the user and the front of the terminal 1200 is gradually increasing, the processor 1201 controls the display screen 1205 to switch from the screen-off state to the screen-on state.

[0249] Those skilled in the art will understand that Fig.12 The structure shown in the figure does not constitute a limitation on the terminal 1200, and the terminal 1200 may include more or fewer components than those shown in the figure, or combine certain components, or adopt a different component arrangement.

[0250] Fig.13 It is a structural diagram of a server provided according to an embodiment of the present application. The server 1300 may have relatively large differences due to different configurations or performances, and may include one or more processors (Central Processing Units, CPU) 1301 and one or more memories 1302, wherein the memory 1302 stores at least one computer program, and the at least one computer program is loaded and executed by the processor 1301 to implement the virtual scene synchronization method or virtual scene display method provided by the above-mentioned various method embodiments. Of course, the server may also have components such as a wired or wireless network interface, a keyboard, and an input and output interface for input and output. The server may also include other components for implementing device functions, which will not be repeated here.

[0251] The embodiment of the present application also provides a computer-readable storage medium, in which at least one computer program is stored, and the at least one computer program is loaded and executed by a processor of a computer device to implement the virtual scene synchronization method or the virtual scene display method of the above embodiment. For example, the computer-readable storage medium can 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, and an optical data storage device.

[0252] The embodiments of the present application also provide a computer program product, which, when executed by a processor, implements the method for synchronizing a virtual scene in the embodiments of the present application, or, when executed by a processor, implements the method for displaying a virtual scene in the embodiments of the present application.

[0253] A person skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware or by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.

[0254] The above description is only an optional embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the protection scope of the present application.

Claims

1. A method for synchronizing a virtual scene, characterized in that: The method comprises: Receiving a midway joining request for a target virtual scene sent by a first terminal, the midway joining request carries an object identifier of a target virtual object, the target virtual object is a virtual object controlled by the first terminal, the target virtual scene performs data synchronization in a frame synchronization manner, and the target virtual scene includes a virtual object controlled by at least one second terminal; Sending data of multiple scene image frames of the target virtual scene to the first terminal, the multiple scene image frames are all scene image frames in the running process of the target virtual scene, and the data of the multiple scene image frames are used to run the scene progress of the target virtual scene from the initial progress to the target progress, and the target progress is the scene progress of the target virtual scene at present; In response to the first terminal running the scene progress of the target virtual scene to the target progress, sending an object loading instruction carrying the object identifier to the first terminal and the at least one second terminal, so that the first terminal and the at least one second terminal load the target virtual object in the target virtual scene; The method further comprises: receiving a scene leaving request for the target virtual scene sent by the first terminal, wherein the scene leaving request carries an object identifier of the target virtual object; Sending a leave verification instruction to the first terminal and the at least one second terminal, wherein the leave verification instruction is used to instruct to determine whether the leave object state of the target virtual object is a leaveable state; In response to receiving an object settlement request sent by the first terminal, an object settlement instruction is sent to the first terminal and the at least one second terminal, wherein the object settlement instruction is used to instruct the first terminal to report the current attribute information of the target virtual object and instruct the at least one second terminal to remove the target virtual object from the target virtual scene.

2. The method according to claim 1, characterized in that The sending data of a plurality of scene image frames of the target virtual scene to the first terminal includes: Acquire data of the multiple scene image frames of the target virtual scene, the data of the scene image frames comprising first-category data and second-category data, the first-category data being used to execute rendering logic, and the second-category data being used to execute operation logic; Sending the second type of data of the multiple scene image frames to the first terminal.

3. The method according to claim 2, characterized in that The method further comprises: Acquire a plurality of target scene image frames within a target frame number range from the plurality of scene image frames; The first type of data of the multiple target scene image frames is sent to the first terminal.

4. The method according to claim 2, characterized in that: The method further comprises: Determining a plurality of rendering contents based on the data of the plurality of scene image frames; Acquire, from the data of the multiple scene image frames, data corresponding to a target rendering content whose rendering priority is higher than a target priority, the data corresponding to the target rendering content being part of the first category of data of the scene image frame where the target rendering content is located; Sending data corresponding to the target rendering content to the first terminal.

5. The method according to claim 1, characterized in that: The method further comprises: For any first virtual object that exists when the scene progress of the target virtual scene is the initial progress, the first virtual object is marked with a first mark, where the first mark is used to indicate that the first virtual object always exists in the target virtual scene.

6. The method according to claim 5, characterized in that The method further comprises: In response to the midway joining request of the target virtual object, if the target virtual object is the first virtual object, modifying the loading mark of the target virtual object from the first mark to a second mark, where the second mark is used to indicate that the target virtual object has left the target virtual scene and joins the target virtual scene this time; In the case that the target virtual object is not the first virtual object, the target virtual object is marked with a third mark, and the third mark is used to indicate that the target virtual object is added to the target virtual scene this time.

7. The method according to claim 6, characterized in that The method further comprises: In response to the midway joining request of the target virtual object, acquiring a loading mark of at least one second virtual object that existed in the target virtual scene, where the loading mark of the second virtual object is the first mark, the second mark or the third mark; For any second virtual object, when the loading mark of the second virtual object is the second mark, the loading mark of the second virtual object is modified to a fourth mark, where the fourth mark is used to indicate that the second virtual object is not added to the target virtual scene this time; When the loading mark of the second virtual object is the third mark, the loading mark of the second virtual object is modified to a fifth mark, where the fifth mark is used to indicate that the second virtual object is not added to the target virtual scene this time.

8. The method according to claim 1, characterized in that The method further comprises: In response to receiving the object control request sent by the first terminal and the at least one second terminal, a confirmation control instruction is sent to the first terminal and the at least one second terminal, where the confirmation control instruction is used to instruct to switch the target virtual object to a controllable state.

9. A method for displaying a virtual scene, characterized in that: Applied to a first terminal, the method includes: In response to a midway joining operation on a target virtual scene, data of a plurality of scene image frames of the target virtual scene are acquired, the target virtual scene being synchronized in a frame synchronization manner, the plurality of scene image frames being all scene image frames during the operation of the target virtual scene; the target virtual scene comprising a virtual object controlled by at least one second terminal; Based on the data of the multiple scene image frames, the scene progress of the target virtual scene is run from the initial progress to the target progress, where the target progress is the scene progress of the target virtual scene at present; In the target virtual scene, loading a target virtual object; The method further comprises: In response to a leaving operation on the target virtual scene, sending a scene leaving request to a server, wherein the scene leaving request carries an object identifier of the target virtual object; receiving a leaving verification instruction sent by the server, wherein the leaving verification instruction is used to instruct whether a leaving object state of the target virtual object is a leaving state; In response to the leaving object state being a leaveable state, sending an object settlement request to the server; An object settlement instruction sent by the server based on the object settlement request is received, where the object settlement instruction is used to instruct the first terminal to report current attribute information of the target virtual object and instruct the at least one second terminal to remove the target virtual object from the target virtual scene.

10. The method according to claim 9, characterized in that The data of the scene image frame includes first-category data and second-category data, the first-category data is used to execute rendering logic, and the second-category data is used to execute operation logic; The step of running the scene progress of the target virtual scene from the initial progress to the target progress based on the data of the plurality of scene image frames includes: The target virtual scene when the loading scene progress is the initial progress; Acquire the second type of data of the plurality of scene image frames from the data of the plurality of scene image frames; Based on the second type of data of the multiple scene image frames, the scene progress of the target virtual scene is run from the initial progress to the target progress.

11. The method according to claim 10, characterized in that The step of running the scene progress of the target virtual scene from the initial progress to the target progress based on the second type of data of the plurality of scene image frames includes: Acquire a plurality of target scene image frames within a target frame number range from the plurality of scene image frames; Acquire first type data of the plurality of target scene image frames; Based on the first type of data of the plurality of target scene image frames and the second type of data of the plurality of scene image frames, the scene progress of the target virtual scene is run from the initial progress to the target progress.

12. The method according to claim 10, characterized in that The step of running the scene progress of the target virtual scene from the initial progress to the target progress based on the second type of data of the plurality of scene image frames includes: Determining a plurality of rendering contents based on the data of the plurality of scene image frames; Acquire, from the data of the multiple scene image frames, data corresponding to a target rendering content whose rendering priority is higher than a target priority, the data corresponding to the target rendering content being part of the first category of data of the scene image frame where the target rendering content is located; Based on the data corresponding to the target rendering content and the second type of data of the multiple scene image frames, the scene progress of the target virtual scene is run from the initial progress to the target progress.

13. The method according to claim 9, characterized in that The method further comprises: Determining a loading mark of at least one virtual object associated with the target virtual scene based on the data of the multiple scene image frames; In the case where a target loading mark exists, a virtual object with the target loading mark is loaded in the target virtual scene whose scene progress is the initial progress, wherein the target loading mark is used to indicate that the virtual object exists when the scene progress of the target virtual scene is the initial progress.

14. The method according to claim 9, characterized in that The step of running the scene progress of the target virtual scene from the initial progress to the target progress based on the data of the plurality of scene image frames includes: Displaying the target virtual scene when the scene progress is the initial progress; Dividing the data of the plurality of scene image frames into a first frame data group and a second frame data group according to time sequence; Based on the first frame data group, rendering the target virtual scene by using a partial rendering method; Based on the second frame data group, the target virtual scene is rendered in a full rendering manner, so that the target virtual scene is loaded to the target progress.

15. The method according to claim 9, characterized in that The method further comprises: In response to the leaving object state being a leaveable state, current attribute information of the target virtual object is sent to the server.

16. The method according to claim 9, characterized in that The step of loading the target virtual object in the target virtual scene includes: Before the scene progress of the target virtual scene is loaded into the target progress, the target virtual object is preloaded in the target virtual scene.

17. A virtual scene synchronization device, characterized in that: The device comprises: A receiving module, configured to receive a midway joining request for a target virtual scene sent by a first terminal, wherein the midway joining request carries an object identifier of a target virtual object, wherein the target virtual object is a virtual object controlled by the first terminal, wherein the target virtual scene performs data synchronization in a frame synchronization manner, and wherein the target virtual scene includes a virtual object controlled by at least one second terminal; a sending module, used for sending data of a plurality of scene image frames of the target virtual scene to the first terminal, wherein the plurality of scene image frames are all scene image frames in the running process of the target virtual scene, and the data of the plurality of scene image frames are used for running the scene progress of the target virtual scene from an initial progress to a target progress, wherein the target progress is the scene progress of the target virtual scene at present; The sending module is further configured to send an object loading instruction carrying the object identifier to the first terminal and the at least one second terminal in response to the first terminal running the scene progress of the target virtual scene to the target progress, so that the first terminal and the at least one second terminal load the target virtual object in the target virtual scene; The receiving module is further configured to receive a scene leaving request for the target virtual scene sent by the first terminal, wherein the scene leaving request carries an object identifier of the target virtual object; The sending module is further used to send a leaving verification instruction to the first terminal and the at least one second terminal, wherein the leaving verification instruction is used to instruct to determine whether the leaving object state of the target virtual object is a leaving state; The sending module is also used to send an object settlement instruction to the first terminal and the at least one second terminal in response to receiving an object settlement request sent by the first terminal, and the object settlement instruction is used to instruct the first terminal to report the current attribute information of the target virtual object and instruct the at least one second terminal to remove the target virtual object from the target virtual scene.

18. The device according to claim 17, characterized in that The sending module is used for: Acquire data of the multiple scene image frames of the target virtual scene, the data of the scene image frames including first category data and second category data, the first category data being used to execute rendering logic, and the second category data being used to execute operation logic; and send the second category data of the multiple scene image frames to the first terminal.

19. The device according to claim 18, characterized in that The device also includes: A first acquisition module, used for acquiring a plurality of target scene image frames within a target frame number range from the plurality of scene image frames; The sending module is further used to send the first type of data of the multiple target scene image frames to the first terminal.

20. The device according to claim 18, characterized in that The device also includes: A determination module, configured to determine a plurality of rendering contents based on the data of the plurality of scene image frames; A second acquisition module is used to acquire data corresponding to a target rendering content whose rendering priority is higher than a target priority from the data of the multiple scene image frames, wherein the data corresponding to the target rendering content is part of the first category of data of the scene image frame where the target rendering content is located; The sending module is further used to send data corresponding to the target rendering content to the first terminal.

21. The device according to claim 17, characterized in that The device also includes: The marking module is used to mark any first virtual object that exists when the scene progress of the target virtual scene is the initial progress with a first mark, wherein the first mark is used to indicate that the first virtual object always exists in the target virtual scene.

22. The device according to claim 21, characterized in that The marking module is also used for: In response to the midway joining request of the target virtual object, if the target virtual object is the first virtual object, modifying the loading mark of the target virtual object from the first mark to a second mark, where the second mark is used to indicate that the target virtual object has left the target virtual scene and joins the target virtual scene this time; In the case that the target virtual object is not the first virtual object, the target virtual object is marked with a third mark, and the third mark is used to indicate that the target virtual object is added to the target virtual scene this time.

23. The device according to claim 22, characterized in that The device also includes: A third acquisition module, configured to acquire, in response to the midway joining request of the target virtual object, a loading mark of at least one second virtual object that existed in the target virtual scene, where the loading mark of the second virtual object is the first mark, the second mark or the third mark; The marking module is further configured to, for any second virtual object, change the loading mark of the second virtual object to a fourth mark when the loading mark of the second virtual object is the second mark, wherein the fourth mark is used to indicate that the second virtual object is not added to the target virtual scene this time; The marking module is further used to modify the loading mark of the second virtual object to a fifth mark when the loading mark of the second virtual object is the third mark, and the fifth mark is used to indicate that the second virtual object is not added to the target virtual scene this time.

24. The device according to claim 17, characterized in that The sending module is further used for: In response to receiving the object control request sent by the first terminal and the at least one second terminal, a confirmation control instruction is sent to the first terminal and the at least one second terminal, where the confirmation control instruction is used to instruct to switch the target virtual object to a controllable state.

25. A virtual scene display device, characterized in that: The display device includes a first terminal, and the device includes: an acquisition module, configured to acquire data of a plurality of scene image frames of the target virtual scene in response to a midway joining operation on the target virtual scene, wherein the target virtual scene performs data synchronization in a frame synchronization manner, and the plurality of scene image frames are all scene image frames during the operation of the target virtual scene; the target virtual scene includes a virtual object controlled by at least one second terminal; An operation module, configured to operate the scene progress of the target virtual scene from an initial progress to a target progress based on the data of the plurality of scene image frames, wherein the target progress is the scene progress of the target virtual scene at present; A loading module, used for loading a target virtual object in the target virtual scene; The device also includes: A second determination module is configured to, in response to a leaving operation on the target virtual scene, send a scene leaving request to a server, wherein the scene leaving request carries an object identifier of the target virtual object; and receive a leaving verification instruction sent by the server, wherein the leaving verification instruction is used to indicate whether the leaving object state of the target virtual object is a leaveable state. A module for executing the following steps: in response to the leaving object state being a leaveable state, sending an object settlement request to the server; receiving an object settlement instruction sent by the server based on the object settlement request, wherein the object settlement instruction is used to instruct the first terminal to report the current attribute information of the target virtual object and instruct the at least one second terminal to remove the target virtual object from the target virtual scene.

26. The device according to claim 25, characterized in that The data of the scene image frame includes first-category data and second-category data, the first-category data is used to execute rendering logic, and the second-category data is used to execute operation logic; The operation module comprises: A loading unit, used for loading the target virtual scene when the scene progress is the initial progress; An acquiring unit, configured to acquire the second type of data of the plurality of scene image frames from the data of the plurality of scene image frames; An operating unit is used to operate the scene progress of the target virtual scene from an initial progress to a target progress based on the second type of data of the plurality of scene image frames.

27. The device according to claim 26, characterized in that The operating unit is used for: Acquire a plurality of target scene image frames within a target frame number range from the plurality of scene image frames; Acquire first type data of the plurality of target scene image frames; Based on the first type of data of the plurality of target scene image frames and the second type of data of the plurality of scene image frames, the scene progress of the target virtual scene is run from the initial progress to the target progress.

28. The device according to claim 26, characterized in that The operating unit is used for: Determining a plurality of rendering contents based on the data of the plurality of scene image frames; Acquire, from the data of the multiple scene image frames, data corresponding to a target rendering content whose rendering priority is higher than a target priority, the data corresponding to the target rendering content being part of the first category of data of the scene image frame where the target rendering content is located; Based on the data corresponding to the target rendering content and the second type of data of the multiple scene image frames, the scene progress of the target virtual scene is run from the initial progress to the target progress.

29. The device according to claim 25, characterized in that The device also includes: A first determination module, configured to determine a loading mark of at least one virtual object associated with the target virtual scene based on data of the plurality of scene image frames; The loading module is further used to load a virtual object with a target loading mark in the target virtual scene whose scene progress is the initial progress when there is a target loading mark, and the target loading mark is used to indicate that the virtual object exists when the scene progress of the target virtual scene is the initial progress.

30. The device according to claim 25, characterized in that The operation module is used to: Displaying the target virtual scene when the scene progress is the initial progress; Dividing the data of the plurality of scene image frames into a first frame data group and a second frame data group according to time sequence; Based on the first frame data group, rendering the target virtual scene by using a partial rendering method; Based on the second frame data group, the target virtual scene is rendered in a full rendering manner, so that the target virtual scene is loaded to the target progress.

31. The device according to claim 25, characterized in that The device also includes: The sending module is used for sending the current attribute information of the target virtual object to the server in response to the leaving object state being a leaveable state.

32. The device according to claim 25, characterized in that The loading module is used to: Before the scene progress of the target virtual scene is loaded into the target progress, the target virtual object is preloaded in the target virtual scene.

33. A computer device, characterized in that: The computer device includes a processor and a memory, the memory is used to store at least one computer program, the at least one computer program is loaded by the processor and executes the method for synchronizing a virtual scene as described in any one of claims 1 to 8, or the at least one computer program is loaded by the processor and executes the method for displaying a virtual scene as described in any one of claims 9 to 16.

34. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store at least one computer program, and the at least one computer program is used to execute the virtual scene synchronization method described in any one of claims 1 to 8, or the at least one computer program is used to execute the virtual scene display method described in any one of claims 9 to 16.

35. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, it implements the method for synchronizing a virtual scene as described in any one of claims 1 to 8, or, when the computer program is executed by a processor, it implements the method for displaying a virtual scene as described in any one of claims 9 to 16.

Citation Information

Patent Citations

  • Game reconnection method and device, equipment and storage medium

    CN113521727A

  • Game synchronization method and device, terminal, server and storage medium

    CN113521743A