Object Processing Method, Client, Server, Electronic Device, and Storage Medium
By dividing the display object into sub-display objects and displaying and updating them as units, the real-time and accuracy of display and updates in multi-party interactive applications are solved, and the interaction efficiency and real-timeness are improved.
Patent Information
- Application Number
- CN202010351778.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-04-28
- Publication Date
- 2025-07-29
- Estimated Expiration
- 2040-11-03
AI Technical Summary
In multi-party interactive applications, it is difficult for the existing technology to achieve efficient, real-time and accurate display and update of multiple participants at the same time, resulting in game lag or inconsistent synchronization.
The display object is divided into sub-display objects. By obtaining and displaying sub-display object data, the sub-display object is used as units for display and update, which reduces the calculation load and resource overhead and improves the real-time and accuracy of display.
It improves interaction efficiency, real-timeness and accuracy in multi-party interactive applications, and reduces the problems of game lag and synchronization inconsistency.
Smart Images

Figure CN113289348B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure relate to the technical field of data processing, and particularly to an object processing method, a client, a server, an electronic device, and a storage medium. Background Art
[0002] With the development of science and technology and network technology, multi-party interactive application programs and application objects based on network data transmission are increasingly widely used, such as large multi-party interactive games and so on. In multi-party interactive applications, it is desired that multiple participants can see the operation results of other participants while seeing their own operation results, so as to improve the interaction efficiency, real-time performance, and accuracy. This poses relatively high requirements for the real-time display and update of operation objects. Summary of the Invention
[0003] Embodiments of the present disclosure provide an object processing method, a client, a server, an electronic device, and a storage medium.
[0004] In a first aspect, an object processing method is provided in embodiments of the present disclosure.
[0005] The object processing method includes:
[0006] Obtain display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0007] Display the display object according to the display object data.
[0008] In combination with the first aspect, in a first implementation manner of the first aspect of the present disclosure, the object processing method further includes:
[0009] Split the display object locally on the client to obtain the sub-display object data of the sub-display objects.
[0010] In combination with the first aspect, in a second implementation manner of the first aspect of the present disclosure, the method further includes:
[0011] Obtain the sub-display object data of the sub-display objects from the server.
[0012] In combination with any one of the first aspect, the first implementation manner, and the second implementation manner of the first aspect, in a third implementation manner of the first aspect of the present disclosure, splitting the display object includes:
[0013] Split the display object according to a preset method.
[0014] In combination with any one of the first aspect, the first implementation manner, and the second implementation manner of the first aspect, in a fourth implementation manner of the first aspect of the present disclosure, splitting the display object includes:
[0015] Determine the position involved in the interaction of the display object according to the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object, and segment the display object according to the position involved in the interaction of the display object.
[0016] Combined with the fourth implementation manner of the first aspect, in the fifth implementation manner of the first aspect of the present disclosure, the method further includes:
[0017] Determine the sub-display object data of the sub-display object involved in the interaction according to the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object.
[0018] Combined with the third implementation manner or the fourth implementation manner of the first aspect, in the sixth implementation manner of the first aspect of the present disclosure, wherein the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation strength, attributes of the interaction application object.
[0019] Combined with any one of the first aspect to the sixth implementation manner of the first aspect, in the seventh implementation manner of the first aspect of the present disclosure, the method further includes:
[0020] Obtain display object update data, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display an updated display object.
[0021] Combined with the seventh implementation manner of the first aspect, in the eighth implementation manner of the first aspect of the present disclosure, wherein compared with the display object, at least one or more of the following of the specified sub-display object have changed: color, shape, transparency, texture, pattern, material.
[0022] Combined with the seventh implementation manner or the eighth implementation manner of the first aspect, in the ninth implementation manner of the first aspect of the present disclosure, wherein the additional display object data is used to determine at least one or more of the following of the additional display object: position, color, shape, transparency, texture, pattern, material.
[0023] Combined with any one of the seventh implementation manner to the ninth implementation manner of the first aspect, in the tenth implementation manner of the first aspect of the present disclosure, the method further includes:
[0024] Determine at least one or more of the following based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data.
[0025] Combined with the tenth implementation manner of the first aspect, in the eleventh implementation manner of the first aspect of the present disclosure, wherein the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation strength, and the attributes of the interaction application object.
[0026] Combined with the tenth implementation manner of the first aspect, in the twelfth implementation manner of the first aspect of the present disclosure, wherein determining at least one or more of the following based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data, includes:
[0027] Determine at least one or more of the following based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object from one or more clients: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data.
[0028] Combined with the twelfth implementation manner of the first aspect, in the thirteenth implementation manner of the first aspect of the present disclosure, the method further includes:
[0029] Multiple clients synchronously receive the display object update data.
[0030] Combined with the tenth implementation manner of the first aspect, in the fourteenth implementation manner of the first aspect of the present disclosure, wherein determining at least one or more of the following based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data, includes:
[0031] Determine at least one or more of the following based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object from one or more clients sent by the server: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data.
[0032] Combined with any one of the seventh implementation to the fourteenth implementation of the first aspect, in the fifteenth implementation of the first aspect of the present disclosure, wherein:
[0033] The display object update data includes updating the overall rendering data or the overall display data of the display object; or
[0034] The display object update data includes the incremental rendering data or incremental display data of the display object compared to the display object.
[0035] Combined with any one of the seventh implementation to the fourteenth implementation of the first aspect, in the sixteenth implementation of the first aspect of the present disclosure, wherein:
[0036] The obtaining of the display object update data includes: obtaining the display object update data from the server side or obtaining the display object update data locally from the client side.
[0037] Combined with any one of the seventh implementation to the fourteenth implementation of the first aspect, in the seventeenth implementation of the first aspect of the present disclosure, further includes: displaying the updated display object according to the display object update data.
[0038] Combined with the first aspect, in the eighteenth implementation of the first aspect of the present disclosure, the obtaining of the display object data includes:
[0039] Obtaining the display object data from the server side, wherein the display object data includes the display data for displaying the rendered display object.
[0040] Combined with the first aspect, any one of the first implementation and the second implementation of the first aspect, in the nineteenth implementation of the first aspect of the present disclosure, the obtaining of the display object data further includes:
[0041] Generating a rendering mesh for rendering the display object according to the segmentation result of the display object,
[0042] Wherein, the displaying of the display object according to the display object data includes:
[0043] Rendering the display object according to the rendering mesh.
[0044] Combined with the nineteenth implementation of the first aspect, in the twentieth implementation of the first aspect of the present disclosure, the rendering of the display object according to the rendering mesh includes:
[0045] Based on the vertices on the surface layer of the display object in the rendering mesh, rendering the display object according to the fact that there are no sub-display objects in the display object that are not to be displayed.
[0046] Combined with the nineteenth implementation of the first aspect, in the twenty-first implementation of the first aspect of the present disclosure, generating a rendering mesh for rendering a display object according to the segmentation result of the display object further includes:
[0047] Determine the sub-display objects involved in the interaction according to the interaction data between the interaction application object and the display object or the corresponding interaction body of the display object and the segmentation result of the display object;
[0048] Modify the index information of the grids of the sub-display objects involved in the interaction in the rendering mesh according to the sub-display objects involved in the interaction.
[0049] Combined with the twenty-first implementation of the first aspect, in the twenty-second implementation of the first aspect of the present disclosure, wherein the display object is a three-dimensional display object and the rendering mesh is a three-dimensional rendering mesh, modifying the index information of the grids of the sub-display objects involved in the interaction in the rendering mesh includes:
[0050] Modify the index information of the grids of the sub-display objects involved in the interaction in the rendering mesh so that the inner walls of the gaps or holes penetrating the three-dimensional display object are rendered in the rendering meshes of the sub-display objects that are not displayed.
[0051] Combined with the twenty-first implementation of the first aspect, in the twenty-third implementation of the first aspect of the present disclosure, wherein the display object is a three-dimensional display object with a multi-layer structure, and the corresponding interaction bodies are arranged between the layers of the three-dimensional display object.
[0052] Combined with the twenty-first implementation of the first aspect, in the twenty-fourth implementation of the first aspect of the present disclosure, rendering the display object according to the rendering mesh includes:
[0053] Perform texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering mesh.
[0054] Combined with the twenty-fourth implementation of the first aspect, in the twenty-fifth implementation of the first aspect of the present disclosure, performing texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering mesh includes:
[0055] Use at least one texture to perform texture mapping rendering on the edges of the grids of the sub-display objects involved in the interaction in the rendering mesh and the areas adjacent to the edges.
[0056] Combined with the twenty-fourth implementation manner of the first aspect, in the twenty-sixth implementation manner of the first aspect of the present disclosure, the texture mapping rendering of the grid of the sub-display object involved in the interaction in the rendering grid includes:
[0057] Clear the current texture mapping template data of the rendering grid;
[0058] Render the object template of the current display object;
[0059] According to the object template, perform texture mapping rendering on the grid of the sub-display object involved in the interaction in the rendering grid.
[0060] Combined with the nineteenth implementation manner of the first aspect, in the twenty-seventh implementation manner of the first aspect of the present disclosure, wherein the sub-display object has a sub-display object collision body for implementing the interaction effect between the sub-display object and the interaction application object,
[0061] Wherein, the generating a rendering grid for rendering a display object according to the segmentation result of the display object further includes:
[0062] According to the interaction data between the interaction application object and the sub-display object collision body, modify the index information of the grid of the sub-display object involved in the interaction in the rendering grid to delete the sub-display object collision body, or set the sub-display object collision body to unavailable, or set the volume of the sub-display object collision body to 0.
[0063] Combined with the nineteenth implementation manner of the first aspect, in the twenty-eighth implementation manner of the first aspect of the present disclosure, wherein the rendering the display object according to the rendering grid includes at least one of the following operations:
[0064] Apply visual basic characteristics to the rendering grid;
[0065] Apply texture characteristics to the rendering grid;
[0066] Apply lighting characteristics to the rendering grid.
[0067] Second aspect, an object processing method is provided in an embodiment of the present disclosure.
[0068] The object processing method includes:
[0069] Obtain display object data, wherein the display object data includes sub-display object data of sub-display objects obtained by segmenting a display object;
[0070] Send the display object data to a client for displaying the display object.
[0071] In combination with the second aspect, in the first implementation manner of the second aspect of the present disclosure, the method further includes:
[0072] Locally segment the display object on the server side to obtain the sub-display object data of the sub-display object.
[0073] In combination with the second aspect, in the second implementation manner of the second aspect of the present disclosure, the method further includes:
[0074] Obtain the sub-display object data of the sub-display object from the client.
[0075] In combination with any one of the second aspect, the first implementation manner and the second implementation manner of the second aspect, in the third implementation manner of the second aspect of the present disclosure, wherein, the segmentation of the display object includes:
[0076] Segment the display object according to a preset method.
[0077] In combination with any one of the second aspect, the first implementation manner and the second implementation manner of the second aspect, in the fourth implementation manner of the second aspect of the present disclosure, the segmentation of the display object includes:
[0078] Determine the position involved in the interaction of the display object according to the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object, and segment the display object according to the position involved in the interaction of the display object.
[0079] In combination with the fourth implementation manner of the second aspect, in the fifth implementation manner of the second aspect of the present disclosure, the method further includes:
[0080] Determine the sub-display object data of the sub-display object involved in the interaction according to the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object.
[0081] In combination with any one of the third implementation manner to the fifth implementation manner of the second aspect, in the sixth implementation manner of the second aspect of the present disclosure, wherein the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, attributes of the interaction application object.
[0082] In combination with any one of the second aspect, the first implementation manner to the sixth implementation manner of the second aspect, in the seventh implementation manner of the second aspect of the present disclosure, further includes:
[0083] Obtain display object update data, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display an updated display object.
[0084] Combined with the seventh implementation manner of the second aspect, in the eighth implementation manner of the second aspect of the present disclosure, wherein, compared with the display object, at least one or more of the following of the specified sub-display object have changed: color, shape, transparency, texture, pattern, material.
[0085] Combined with the seventh implementation manner of the second aspect or the eighth implementation manner of the second aspect, in the ninth implementation manner of the second aspect of the present disclosure, wherein the additional display object data is used to determine at least one or more of the following of the additional display object: position, color, shape, transparency, texture, pattern, material.
[0086] Combined with any one of the seventh implementation manner to the ninth implementation manner of the second aspect, in the tenth implementation manner of the second aspect of the present disclosure, the method further includes:
[0087] According to the interaction data of the interaction application object with the display object or the corresponding interaction body of the display object, determine at least one or more of the following to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data.
[0088] Combined with the tenth implementation manner of the second aspect, in the eleventh implementation manner of the second aspect of the present disclosure, wherein the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation strength, attributes of the interaction application object.
[0089] Combined with the tenth implementation manner of the second aspect, in the twelfth implementation manner of the second aspect of the present disclosure, wherein according to the interaction data of the interaction application object with the display object or the corresponding interaction body of the display object, determine at least one or more of the following to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data, includes:
[0090] According to the interaction data of the interaction application object with the display object or the corresponding interaction body of the display object from one or more clients, determine at least one or more of the following: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data.
[0091] Combined with the twelfth implementation manner of the second aspect, in the thirteenth implementation manner of the second aspect of the present disclosure, the method further includes:
[0092] Synchronously send the updated data of the display object to the multiple clients.
[0093] Combined with any one of the seventh implementation manner to the thirteenth implementation manner of the second aspect, in the fourteenth implementation manner of the second aspect of the present disclosure, wherein:
[0094] The updated data of the display object includes the overall rendering data or the overall display data of the updated display object; or
[0095] The updated data of the display object includes the incremental rendering data or the incremental display data of the updated display object compared to the display object.
[0096] Combined with any one of the seventh implementation manner to the thirteenth implementation manner of the second aspect, in the fifteenth implementation manner of the second aspect of the present disclosure, wherein:
[0097] The obtaining of the updated data of the display object includes: obtaining the updated data of the display object from the local server or obtaining the updated data of the display object from the client.
[0098] Combined with any one of the second aspect, the first implementation manner and the second implementation manner of the second aspect, in the sixteenth implementation manner of the second aspect of the present disclosure, wherein the sending of the display object data to the client for displaying the display object includes:
[0099] Only send the part of the display object data that is different from the display object data previously sent to the client to the client.
[0100] Combined with the second aspect, in the seventeenth implementation manner of the second aspect of the present disclosure, the sending of the display object data to the client for displaying the display object includes:
[0101] Send the display object data to the client for displaying the display object, wherein the display object data includes the display data for displaying the rendered display object.
[0102] Combined with any one of the second aspect, the first implementation manner and the second implementation manner of the second aspect, in the eighteenth implementation manner of the second aspect of the present disclosure, the obtaining of the display object data further includes:
[0103] Generate a rendering mesh for rendering the display object according to the segmentation result of the display object;
[0104] Render the display object according to the rendering mesh.
[0105] Combined with the eighteenth implementation manner of the second aspect, in the nineteenth implementation manner of the second aspect of the present disclosure, the rendering of the display object according to the rendering grid includes:
[0106] Based on the fact that there are no sub-display objects in the display object that are not to be displayed, the display object is rendered based on the vertices on the surface layer of the display object in the rendering grid.
[0107] Combined with the eighteenth implementation manner of the second aspect, in the twentieth implementation manner of the second aspect of the present disclosure, the generation of the rendering grid for rendering the display object according to the segmentation result of the display object further includes:
[0108] Based on the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object and the segmentation result of the display object, determine the sub-display objects involved in the interaction;
[0109] According to the sub-display objects involved in the interaction, modify the index information of the grids of the sub-display objects involved in the interaction in the rendering grid.
[0110] Combined with the twentieth implementation manner of the second aspect, in the twenty-first implementation manner of the second aspect of the present disclosure, wherein the display object is a three-dimensional display object and the rendering grid is a three-dimensional rendering grid, modifying the index information of the grids of the sub-display objects involved in the interaction in the rendering grid includes:
[0111] Modify the index information of the grids of the sub-display objects involved in the interaction in the rendering grid so that the inner walls of the gaps or holes penetrating the three-dimensional display object are rendered in the rendering grids of the sub-display objects that are not to be displayed.
[0112] Combined with the twentieth implementation manner of the second aspect, in the twenty-second implementation manner of the second aspect of the present disclosure, wherein the display object is a three-dimensional display object with a multi-layer structure, and the corresponding interaction entities are arranged between the layers of the three-dimensional display object.
[0113] Combined with the twentieth implementation manner of the second aspect, in the twenty-third implementation manner of the second aspect of the present disclosure, the rendering of the display object according to the rendering grid includes:
[0114] Perform texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid.
[0115] Combined with the twenty-third implementation manner of the second aspect, in the twenty-fourth implementation manner of the second aspect of the present disclosure, the performing of texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid includes:
[0116] Render the edges of the mesh of the sub-display object involved in the interaction in the rendering mesh and the area adjacent to the edges using at least one texture map.
[0117] Combined with the twenty-third implementation manner of the second aspect, in the twenty-fifth implementation manner of the second aspect of the present disclosure, the texture mapping rendering of the mesh of the sub-display object involved in the interaction in the rendering mesh includes:
[0118] Clear the current texture map template data of the rendering mesh;
[0119] Render the object template of the current display object;
[0120] According to the object template, perform texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh.
[0121] Combined with the eighteenth implementation manner of the second aspect, in the twenty-sixth implementation manner of the second aspect of the present disclosure, wherein the sub-display object has a sub-display object collision body for implementing the interaction effect between the sub-display object and the interaction application object,
[0122] Among them, the generating a rendering mesh for rendering a display object according to the segmentation result of the display object further includes:
[0123] According to the interaction data between the interaction application object and the sub-display object collision body, modify the index information of the mesh of the sub-display object involved in the interaction in the rendering mesh to delete the sub-display object collision body, or set the sub-display object collision body to unavailable, or set the volume of the sub-display object collision body to 0.
[0124] Combined with the eighteenth implementation manner of the second aspect, in the twenty-seventh implementation manner of the second aspect of the present disclosure, wherein the rendering of the display object according to the rendering mesh includes at least one of the following operations:
[0125] Apply visual basic characteristics to the rendering mesh;
[0126] Apply texture characteristics to the rendering mesh;
[0127] Apply lighting characteristics to the rendering mesh.
[0128] In a third aspect, an embodiment of the present disclosure provides a virtual object processing method.
[0129] The virtual object processing method includes:
[0130] Obtain virtual object data, wherein the virtual object data includes sub-virtual object data of sub-virtual objects obtained by segmenting a virtual object;
[0131] Display the virtual object according to the virtual object data, or send the virtual object data.
[0132] In a fourth aspect, an object processing apparatus is provided in an embodiment of the present disclosure.
[0133] The object processing apparatus includes:
[0134] A first acquisition module, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0135] A first display module, configured to display the display object according to the display object data.
[0136] In a fifth aspect, an object processing apparatus is provided in an embodiment of the present disclosure.
[0137] The object processing apparatus includes:
[0138] A fourth acquisition module, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0139] A first sending module, configured to send the display object data to a client for displaying the display object.
[0140] In a sixth aspect, a virtual object processing apparatus is provided in an embodiment of the present disclosure.
[0141] The virtual object processing apparatus includes:
[0142] A seventh acquisition module, configured to acquire virtual object data, where the virtual object data includes sub-virtual object data of sub-virtual objects obtained by splitting a virtual object;
[0143] A processing module, configured to display the virtual object according to the virtual object data, or send the virtual object data.
[0144] In a seventh aspect, a client is provided in an embodiment of the present disclosure.
[0145] The client includes:
[0146] An eighth acquisition module, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0147] A third display module, configured to display the display object according to the display object data.
[0148] In an eighth aspect, an embodiment of the present disclosure provides a server.
[0149] The server includes:
[0150] A ninth acquisition module, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0151] A second sending module, configured to send the display object data to a client for displaying the display object.
[0152] In a tenth aspect, an embodiment of the present disclosure provides a virtual reality object transformation method, including:
[0153] Acquiring virtual reality object data of a virtual reality object, where the virtual reality object data includes sub-virtual reality object data of sub-virtual reality objects obtained by splitting the virtual reality object;
[0154] Determining sub-virtual reality objects involved in the transformation according to the transformation application object and the transformation data of the virtual reality object;
[0155] Acquiring virtual reality object transformation data, where the virtual reality object transformation data includes transformation sub-virtual reality object data of the sub-virtual reality objects involved in the transformation and / or additional virtual reality object data of additional virtual reality objects, and the virtual reality object transformation data is used to render or display the transformation result of the virtual reality object.
[0156] In an eleventh aspect, an embodiment of the present disclosure provides a virtual reality object transformation device, including:
[0157] An acquisition module, configured to acquire virtual reality object data of a virtual reality object, where the virtual reality object data includes sub-virtual reality object data of sub-virtual reality objects obtained by splitting the virtual reality object;
[0158] A virtual reality transformation module, configured to determine sub-virtual reality objects involved in the transformation according to the transformation application object and the transformation data of the virtual reality object;
[0159] A virtual reality presentation module, configured to acquire virtual reality object transformation data, where the virtual reality object transformation data includes transformation sub-virtual reality object data of the sub-virtual reality objects involved in the transformation and / or additional virtual reality object data of additional virtual reality objects, and the virtual reality object transformation data is used to render or display the transformation result of the virtual reality object.
[0160] In a twelfth aspect, an embodiment of the present disclosure provides an electronic device, including a memory and a processor; wherein, the memory is used for storing one or more computer instructions, and the one or more computer instructions are executed by the processor to implement the method steps as described above.
[0161] In a thirteenth aspect, an embodiment of the present disclosure provides a computer-readable storage medium, including a memory and a processor; wherein, the memory is used for storing one or more computer instructions, and the one or more computer instructions are executed by the processor to implement the method steps as described above.
[0162] The technical solutions provided by the embodiments of the present disclosure may include the following beneficial effects:
[0163] By splitting a display object into sub-display objects and displaying the sub-display objects according to the sub-display object data, the above technical solution realizes the display of the display object. This solution displays or updates the object in units of sub-display objects, improves the display efficiency, improves the real-time performance of the display, and helps to improve the interaction efficiency, real-time performance and accuracy in multi-party interaction applications.
[0164] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit the embodiments of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0165] With reference to the drawings, through the following detailed description of non-limiting embodiments, other features, objectives and advantages of the embodiments of the present disclosure will become more obvious. In the drawings:
[0166] Figure 1A A schematic diagram of an exemplary application scenario according to an embodiment of the present disclosure is shown;
[0167] Figure 1B A flowchart of an object processing method according to an embodiment of the present disclosure is shown;
[0168] Figure 1C A schematic diagram of an exemplary display object and sub-display objects according to an embodiment of the present disclosure is shown;
[0169] Figure 1D A schematic diagram of an exemplary display object and sub-display objects according to an embodiment of the present disclosure is shown;
[0170] Figure 1E A schematic diagram of a scenario of interaction between a client and a server according to an embodiment of the present disclosure is shown;
[0171] Figure 2 A schematic diagram of an exemplary texture map according to an embodiment of the present disclosure is shown;
[0172] Figure 3Shows a flowchart of an object processing method according to an embodiment of the present disclosure;
[0173] Figure 4 Shows a flowchart of a virtual object processing method according to an embodiment of the present disclosure;
[0174] Figure 5 Shows a structural block diagram of an object processing apparatus according to an embodiment of the present disclosure;
[0175] Figure 6 Shows a structural block diagram of an object processing apparatus according to an embodiment of the present disclosure;
[0176] Figure 7 Shows a structural block diagram of a virtual object processing apparatus according to an embodiment of the present disclosure;
[0177] Figure 8 Shows a structural block diagram of a client according to an embodiment of the present disclosure;
[0178] Figure 9 Shows a structural block diagram of a server according to an embodiment of the present disclosure;
[0179] Figure 10 Shows a schematic structural diagram of a computer system suitable for implementing the object processing method according to an embodiment of the present disclosure. Detailed implementation manners
[0180] Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily implement them. In addition, for clarity, parts irrelevant to the description of the exemplary embodiments are omitted in the drawings.
[0181] In the embodiments of the present disclosure, it should be understood that terms such as "including" or "having" are intended to indicate the presence of the features, numbers, steps, actions, components, parts, or combinations thereof disclosed in this specification, and are not intended to exclude the possibility of the presence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.
[0182] In addition, it should be noted that, without conflict, the embodiments in the present disclosure and the features in the embodiments can be combined with each other. Hereinafter, the embodiments of the present disclosure will be described in detail with reference to the accompanying drawings and in conjunction with the embodiments.
[0183] As mentioned above, with the development of science and technology and network technology, the use of multi-party interactive application programs and application objects based on network data transmission has become increasingly widespread, such as large-scale multi-party interactive games and so on. In multi-party interactive applications, it is hoped that multiple participants can see the operation results of other participants while seeing their own operation results, so as to improve the interaction efficiency, real-time performance, and accuracy. This places relatively high requirements on the real-time display and update of operation objects.
[0184] Figure 1A FIG. shows a schematic diagram of an exemplary application scenario according to an embodiment of the present disclosure.
[0185] As Figure 1A shown, for an indoor shooting game that allows multiple player users, in this game scenario, there are multiple player users of the same camp or opposing camps and building facilities with destructible walls (similarly, the building facilities can also include a part or all of, such as support columns, floors, and ceilings). Each player user can use a firearm to attack opposing players and destroy indoor building facilities to create passages, new offensive routes, or defensive areas for the player users to pass through. For example, there are three player users in this game scenario: player user 1, player user 2, and player user 3. Among them, player user 1 and player user 2 are users of the same camp, and player user 1 and player user 2 are opposing users with player user 3. All three player users use different walls as cover. In order to enable each player user to see the operation results of other player users while seeing their own operation results and improve the interactivity of the game, in the prior art, the player user who generates the operation synchronizes his operation data to other player users, so that other player users calculate, display, or perform other subsequent processing of the operation results respectively in their own scenarios. However, in large-scale interactive games, the generation frequency of operation data of different player users is very high, and the amount of scenario data related to this operation data is very large. If the update speed of the display screen on the client of the player user cannot keep up, there will be a situation of game lag or out-of-sync with the scenarios seen by other players, making it impossible for players to participate in the game normally.
[0186] An embodiment of the present disclosure provides an object processing method, including: obtaining display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object; and displaying the display object according to the display object data.
[0187] The above technical solution realizes the display of a display object by splitting the display object into sub-display objects and displaying the sub-display objects according to the sub-display object data. This solution displays or updates the object in units of sub-display objects, improves the display efficiency, improves the real-time performance of the display, and helps to improve the interaction efficiency, real-time performance, and accuracy in multi-party interaction applications.
[0188] Figure 1B The flowchart of an object processing method according to an embodiment of the present disclosure is shown. According to an embodiment of the present disclosure, the method can be executed by a client, for example.
[0189] As Figure 1B shown, the object processing method according to an embodiment of the present disclosure includes step S101 and step S102.
[0190] In step S101, display object data is obtained, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object.
[0191] In step S102, the display object is displayed according to the display object data.
[0192] Figure 1C The schematic diagram of an exemplary display object and sub-display objects according to an embodiment of the present disclosure is shown.
[0193] As Figure 1C shown, the display object is floor 110, and the sub-display object is floor tile 111 obtained by splitting the floor. Character 120 can interact with floor 110, such as shooting at the floor, throwing a grenade, releasing a shock wave, laser, digging with a pickaxe, prying with a crowbar, touching with a limb (such as kicking, pushing, moving, etc.) to damage floor 110. For example, floor tile 111 in floor 110 is damaged by the bullet, bomb, laser, magic, limb contact, pickaxe-like tool, crowbar-like tool, etc. of character 120, forming hole 112. Hole 112 does not act as an obstacle and can allow character 120 or its part of the limb, bullet, bomb, laser, magic, tool, etc. to pass through.
[0194] Figure 1D The schematic diagram of an exemplary display object and sub-display objects according to an embodiment of the present disclosure is shown.
[0195] As Figure 1D shown, the display object is wall 130, and the sub-display object is wall block 131 obtained by splitting wall 130. Character 140 can interact with wall 130, such as shooting at the wall, throwing a grenade, releasing a shock wave, laser, digging with a pickaxe, prying with a crowbar, touching with a limb (such as kicking, pushing, moving, etc.) to damage wall 130. For example, wall block 131 in wall 130 is damaged by the bullet, bomb, laser, magic, limb contact, pickaxe-like tool, crowbar-like tool, etc. of character 140, forming hole 132. Hole 132 does not act as an obstacle and can allow character 140 or its part of the limb, bullet, bomb, laser, magic, tool, etc. to pass through.
[0196] According to an embodiment of the present disclosure, a display object is segmented into sub-display objects, and the display of the display object can be achieved by displaying the sub-display objects based on the sub-display object data. When the display object changes, such as being destroyed, the sub-display object data of the sub-display objects involved in the change can be updated, so as to update the sub-display objects involved in the change, thereby achieving the update of the display object. In this way, it is not necessary to update the entire display object data every time the display object changes, significantly reducing the computational load, reducing resource overhead, improving the real-time performance of the display, and improving the efficiency, real-time performance, and accuracy of interaction in multi-party interactive application scenarios.
[0197] According to an embodiment of the present disclosure, the display object can be segmented locally on the client side to obtain the sub-display object data of the sub-display objects. For example, in a single-client application, the display object can be segmented locally on the client side to obtain the sub-display object data of the sub-display objects. In a multi-client interaction scenario, the display object can be segmented locally on the client side to obtain the sub-display object data of the sub-display objects, thereby reducing the computational load on the server side.
[0198] According to an embodiment of the present disclosure, the sub-display object data of the sub-display objects can be obtained from the server side. For example, the display object can be segmented on the server side to obtain the sub-display object data of the sub-display objects, and then the sub-display object data is sent to the client. Alternatively, the server can obtain pre-generated sub-display object data and then send the sub-display object data to the client. This method can reduce the computational load on the client side and is applicable to multi-client interaction scenarios.
[0199] According to an embodiment of the present disclosure, the segmentation of the display object includes: segmenting the display object according to a preset method. For example, the display object can be segmented according to the position and / or shape of the preset sub-display objects. By pre-segmenting the display object, compared with the real-time segmentation method, the performance overhead can be significantly reduced, making the scene synchronization of each client simpler and more real-time. For example, in a multi-party interactive online game, it is necessary to ensure the synchronization of the wall shapes between multiple clients. The data of the meshes used in the game engine is of floating-point type, and it is impossible to ensure the consistency of the calculation results of different clients. Therefore, if it is segmented in real time, the wall shapes seen by different clients are very likely to be different. Unless the entire wall mesh is synchronized, but the data volume of the mesh is very large, which will add a lot of pressure to the network. However, for pre-segmentation, it only needs to synchronize the wall ID and the ID of the wall blocks between clients, with a small data volume and easy to ensure consistency.
[0200] According to an embodiment of the present disclosure, the splitting of the display object includes: determining the position involved in the interaction of the display object based on the interaction data between the interaction application object and the display object or the corresponding interaction body of the display object, and splitting the display object according to the position involved in the interaction of the display object.
[0201] According to an embodiment of the present disclosure, the position involved in the interaction can be the direct action position of the interaction applying object on the display object (or the corresponding interactive body of the display object), or it can be the position where the display object (or the corresponding interactive body of the display object) is affected by the interaction.
[0202] For example, when the interaction object is a bullet and the display object is a wall, the position involved in the interaction may be the point where the bullet lands on the wall, or the area of the wall affected by the impact of the bullet.
[0203] According to embodiments of the present disclosure, a display object may have one or more corresponding interactive bodies. The interaction between the display object and the interactive application object can be replaced by the interaction between the corresponding interactive body and the interactive application object, and the display object can be segmented based on the interaction between the corresponding interactive body and the interactive application object. For example, if the display object is a wall, the corresponding interactive body can be a load-bearing column within the wall; if the display object is a floor, the corresponding interactive body can be the floor keel.
[0204] Setting corresponding interactive bodies can reduce the jitter caused by the interaction (for example, collision) between the character and the display object. For example, when a wall is divided into multiple blocks, the character may collide with multiple blocks when colliding with the wall, causing abnormal jitter of the screen and unnecessary degradation of the display effect. By setting fewer corresponding interactive bodies, only when the character interacts with the corresponding interactive body (for example, when the character contacts the display object and the character's travel path or the extension of the travel path intersects with the corresponding interactive body) is it considered that the character has interacted with the display object and the display object is segmented according to the position involved in the interaction. This can effectively reduce the computing load and avoid abnormal jitter of the screen.
[0205] According to an embodiment of the present disclosure, sub-display object data of a sub-display object involved in the interaction can be determined based on interaction data between the interaction application object and the display object or the corresponding interactive body of the display object. For example, the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, and attributes of the interaction application object.
[0206] According to an embodiment of the present disclosure, the impacts of different interaction data on a display object may be different. For example, digging and smashing belong to different interaction types, the positions on the display object involved may be different, and the degrees of damage to the display object may also be different. Therefore, the position involved in the interaction can be determined according to different interaction types, and then the segmentation method and the sub-display object data of the sub-display object involved in the interaction can be determined.
[0207] In addition, when any one of the interaction operation angle, interaction operation speed, interaction operation force, and the attributes of the interaction application object (for example, different weapons) is different, the positions on the display object involved may be different, and the degrees of damage to the display object may also be different. For example, the position areas on the wall involved by a grenade vertically thrown onto the wall and a grenade obliquely thrown onto the wall may be different. The grenade obliquely thrown onto the wall may involve a larger wall position area, while the grenade vertically thrown onto the wall may cause a greater degree of damage. For example, for a hammer hitting the wall at the same inclination angle, a greater speed or force may cause a larger wall area and more serious damage. For example, when a laser and magic act on the wall, the wall positions involved and the degrees of damage may be different. The wall position area involved by magic may be larger and may cause more serious damage.
[0208] Therefore, the position involved in the interaction can be determined according to different interaction data, and then the segmentation method and the sub-display object data of the sub-display object involved in the interaction can be determined.
[0209] According to an embodiment of the present disclosure, the method further includes: obtaining display object update data, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display an updated display object.
[0210] According to an embodiment of the present disclosure, the specified sub-display object may be a sub-display object that has changed among the sub-display objects of the display object, and the additional display object may be a newly added display object other than the display object. For example, in a scene of shooting a wall, the specified sub-display object may be the wall blocks that are damaged or knocked off, such as the wall block where the direct action point of the interaction (for example, the contact point between the shrapnel and the wall) is located and the wall block that is not included in the direct action point of the interaction but is affected by the interaction. For example, although a wall block is not directly hit by the shrapnel, but the surrounding wall blocks are all knocked off by the shrapnel, then this wall block will also fall, that is, this wall block is also a specified sub-display object. The additional display object may be the wall blocks that fall to the ground, or the fragments obtained after the knocked-off wall blocks are broken, or the damaged patterns around the wall hole and on the hole wall, which are used to beautify the hole and the hole wall and vividly simulate the real appearance of the damage (hereinafter referred to as "texture mapping").
[0211] Figure 1E A schematic diagram showing a scenario of interaction between a client and a server according to an embodiment of the present disclosure is shown.
[0212] As Figure 1E shown, the client 160 can be a mobile terminal such as a mobile phone, a PDA, a tablet computer, or a data processing device such as a desktop computer or a notebook computer. The client 160 can display a display object. The server 150 is used to receive data from the client 160 and send the data to the client 160. The server 150 can be a server or a server cluster. For example, the server 150 is a cloud server.
[0213] In Figure 1E the scenario shown, the processing to be performed by the client 160 can be different according to the actual situation. For example, in one case, the client 160 can locally split the display object to obtain sub-display object data of the sub-display object, and can also render the display object according to the interaction result between the interaction application object and the display object, and finally perform display. In this case, the client 160 can only send the user's interaction operation data, the splitting method of the display object, and the ID of the sub-display object that is not displayed or whose display method is changed due to the interaction result to the server 150. At this time, the server 150 synchronously sends the user's interaction operation data, the splitting method of the display object, and the ID of the sub-display object that is not displayed or whose display method is changed due to the interaction result from one or more clients 160 within a certain period to each client 160. In this case, the data processing volume of the client 160 is large, the data processing volume of the server 150 is small, and the data transmission density between the client 160 and the server 150 is relatively small.
[0214] In another case, the server 150 can locally split the display object to obtain sub-display object data of the sub-display object, and can also render the display object according to the interaction result between the interaction application object and the display object, and only send the data that only needs to be displayed after the rendering is completed to the client 160 for display. In this case, the client 160 only needs to upload the user's interaction operation data to the server 150, and the server 150 completes all the processing locally according to the user's interaction operation data from one or more clients 160 within a certain period, and sends the display object data that only needs to be displayed on the client 160 to the client 160. In this case, the data processing volume of the client 160 is small, the data processing volume of the server 150 is large, and the data transmission density between the client 160 and the server 150 is relatively large.
[0215] The above two cases respectively describe the situation where the client 160 undertakes a relatively large amount of data processing work and the server 150 undertakes a relatively large amount of data processing work. It can be understood that, according to limitations in aspects such as the data processing ability of the client 160 and the data communication ability between the client 160 and the server 150, various ways can be adopted to allocate data processing tasks between the client 160 and the server 150. For example, the server 150 can complete the rendering process of the entire display object, while the client 160 can complete the rendering process of the damaged sub-display object. For example, the server 150 can complete the segmentation of the display object, while the client 160 can complete the rendering of the display object. It should be noted that the above description is only an example, and those skilled in the art can understand that various ways can be adopted to allocate data processing tasks between the client 160 and the server 150 according to needs.
[0216] According to an embodiment of the present disclosure, the segmentation result of the display object can be sent from any client 160 to the server 150, and then the segmentation result of the display object can be sent from the server 150 to other clients 160. Alternatively, the server 150 can perform the segmentation of the display object and send the segmentation result to the client 160.
[0217] According to an embodiment of the present disclosure, interaction data can be sent from one or more clients 160 to the server 150. The server 150 generates complete rendering or display data for updating the display object based on the interaction data, and sends the complete rendering or display data for updating the display object to one or more clients 160, so that the client 160 can implement the display of the updated display object according to the complete rendering or display data.
[0218] According to an embodiment of the present disclosure, interaction data can be sent from one or more clients 160 to the server 150. The server 150 generates incremental rendering or display data for updating the display object based on the interaction data, and sends the incremental rendering or display data for updating the display object to one or more clients 160, so that the client 160 can implement the display of the updated display object according to the incremental rendering or display data.
[0219] According to an embodiment of the present disclosure, interaction data can be sent from one or more clients 160 to the server 150. The server 150 generates summarized interaction data based on the interaction data, and sends the summarized interaction data to one or more clients 160, so that the client 160 can generate complete rendering or display data for updating the display object, or generate incremental rendering or display data for updating the display object, to implement the display of the updated display object.
[0220] Figure 2 Shows an exemplary texture map schematic diagram according to an embodiment of the present disclosure.
[0221] According to an embodiment of the present disclosure, the texture maps include two types: small texture maps and large texture maps. The small texture maps are of a smaller size and are pasted at the corners of the holes, while the large texture maps are of a larger size and cover the entire hole opening, as Figure 2 shown. In the figure, the thick solid line represents the hole wall 210. The large texture map 211 covers the entire hole opening, and the small texture map 212 is pasted at the corners of the hole.
[0222] According to an embodiment of the present disclosure, compared with the display object, at least one or more of the following of the specified sub-display object have changed for the updated display object: color, shape, transparency, texture, pattern, material.
[0223] According to an embodiment of the present disclosure, the additional display object data is used to determine at least one or more of the following of the additional display object: position, color, shape, transparency, texture, pattern, material.
[0224] According to an embodiment of the present disclosure, based on the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object, at least one or more of the following can be determined to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data.
[0225] According to an embodiment of the present disclosure, the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, attributes of the interaction application object.
[0226] As described above, according to an embodiment of the present disclosure, based on the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object, the position involved in the interaction of the display object can be determined. Based on this position, which sub-display objects will change can be determined, and these sub-display objects are used as the specified sub-display objects. At the same time, based on the interaction data, the change mode of the sub-display object can be determined, such as the degree of damage (e.g., being knocked off, broken, or deformed), or changes in color, transparency, texture, or pattern (e.g., in a magic scene, it can change from one color to another color, become transparent, or change to another texture or pattern, etc.), or changes in material (e.g., from being able to block objects from passing through to not blocking objects from passing through), so as to determine the updated sub-display object data of the specified sub-display object. The updated sub-display object data can be used to describe one or more of the above-mentioned changed characteristics of the specified sub-display object. The updated specified sub-display object is displayed according to the updated sub-display object data, thereby displaying the updated display object.
[0227] According to an embodiment of the present disclosure, the material of the sub-display object can be used together with the interaction data to determine the impact of the interaction on the sub-display object. For example, the sub-display object can have the material "stone". After the sub-display object is knocked out, the material of the sub-display object can be set to "air" or "no material". In this way, when there is an interaction application object interacting with the sub-display object again, the sub-display object can be regarded as non-existent, that is, it does not collide with the interaction application object.
[0228] According to an embodiment of the present disclosure, a physical scene can be constructed for the sub-display object, where the sub-display object can have a polyhedral geometric profile, and it can be determined whether it interacts with the interaction application object according to the geometric profile. For example, when the interaction application object is a bullet, it can be determined whether the sub-display object changes due to the interaction, that is, whether the sub-display object should be regarded as the specified sub-display object, according to whether the bullet intersects with the polyhedron of the sub-display object when the bullet touches the display object. After the sub-display object is knocked out, the polyhedron of the sub-display object is deleted from the physical scene. After deletion, the sub-display object will no longer interact with the interaction application object, and the user can also observe the scene on the other side of the display object through the hole formed after the sub-display object is knocked out.
[0229] According to an embodiment of the present disclosure, the additional display object and the additional display object data can be determined according to the interaction data of the interaction application object with the display object or with the corresponding interaction body of the display object.
[0230] According to an embodiment of the present disclosure, the additional display object can be generated by the interaction, such as the wall hole texture map, the stones fallen on the ground, etc. Different interaction results can be determined according to the interaction data, such as the fragmentation situation of the wall block, the spattering situation of the broken stones, etc., and then different additional display objects can be determined, such as the texture maps of different sizes and textures, the positions, colors, quantities, shapes, transparencies, textures, patterns, materials (for example, whether it constitutes an obstacle to the movement of the character), etc. of different stones.
[0231] Determining the specified sub-display object and the additional display object according to the interaction data can distinguish the specified sub-display object and the additional display object corresponding to different interaction data, so as to better simulate the scene of the real physical world.
[0232] According to an embodiment of the present disclosure, based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object, determine at least one or more of the following to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data, including: based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object from one or more clients, determine at least one or more of the following: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data.
[0233] According to an embodiment of the present disclosure, one or more clients may send the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object to the server. The server determines at least one or more of the following based on the interaction data from one or more clients: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data, which can reduce the computing pressure on the client and facilitate monitoring the effectiveness of the interaction, identifying invalid operations or cheating behaviors.
[0234] According to an embodiment of the present disclosure, multiple clients synchronously receive the display object update data. In this way, the consistency of the display screens among multiple clients can be ensured, and the inconsistency of the display screens caused by each client independently updating the display object can be avoided.
[0235] According to an embodiment of the present disclosure, based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object, determine at least one or more of the following to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data, including: based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object sent by the server from one or more clients, determine at least one or more of the following: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data.
[0236] According to an embodiment of the present disclosure, the server can send interaction data of an interaction application object from one or more clients with the display object or the corresponding interaction entity of the display object to the client. Thus, the client can determine at least one or more of the following based on the interaction data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data. This implementation can reduce the amount of data transmitted between the server and the client, and relieve the pressure on the communication network. By distributing the calculation to the client, the calculation pressure on the server can be reduced, and each client can flexibly determine at least one or more of the following based on its own software and hardware configuration: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data, improving the personalized adaptation degree of the display effect and the client performance.
[0237] According to an embodiment of the present disclosure, the display object update data includes the overall rendering data or the overall display data of the updated display object; or the display object update data includes the incremental rendering data or the incremental display data of the updated display object compared with the display object.
[0238] According to an embodiment of the present disclosure, the display object update data includes the overall rendering data of the updated display object. The updated display object is rendered and displayed according to the overall rendering data. For example, the updated display object may include the sub-display objects that have not changed and the specified sub-display objects that have changed in the display object. The overall rendering data may include the sub-display object data of the sub-display objects that have not changed and the updated sub-display object data of the specified sub-display objects that have changed. Rendering and displaying according to the overall rendering data can display the updated display object. Since overall rendering is performed, it is not necessary to distinguish which specific sub-display objects are the specified sub-display objects, and the algorithm and program implementation are relatively simple.
[0239] According to an embodiment of the present disclosure, the display object update data includes the overall display data of the updated display object, and the updated display object is displayed according to the overall display data. Since the updated display object is displayed as a whole, it is not necessary to distinguish which specific sub-display objects are the specified sub-display objects, and the algorithm and program implementation are relatively simple.
[0240] According to an embodiment of the present disclosure, the display object update data includes the incremental rendering data of the updated display object compared with the display object. Rendering according to the incremental rendering data can reduce the data transmission volume and the calculation volume, improve the rendering speed, and improve the real-time performance of the display.
[0241] According to an embodiment of the present disclosure, the display object update data includes incremental display data of the updated display object compared to the display object. Displaying according to the incremental display data can reduce the data transmission volume and calculation amount, improve the rendering speed, and enhance the real-time performance of the display.
[0242] According to an embodiment of the present disclosure, obtaining the display object update data includes: obtaining the display object update data from the server or obtaining the display object update data locally from the client, and displaying the updated display object according to the display object update data.
[0243] According to an embodiment of the present disclosure, obtaining the display object data includes: obtaining the display object data from the server, where the display object data includes display data for displaying the rendered display object. By rendering the display object on the server and sending the obtained display data after rendering to the client, the client can directly display according to the display data without performing a rendering operation, which can reduce the computing load of the client and improve the real-time performance and smoothness of the display on the server.
[0244] According to an embodiment of the present disclosure, obtaining the display object data further includes: generating a rendering mesh for rendering the display object according to the segmentation result of the display object, where displaying the display object according to the display object data includes: rendering the display object according to the rendering mesh.
[0245] For example, the rendering mesh may be Figure 1C the mesh in the floor 110 in Figure 1D and the mesh in the wall 130 in . By rendering in units of meshes, when the display object changes, only the changed meshes need to be re-rendered, and the unchanged meshes do not need to be re-rendered, or the previous rendering results can be directly reused for the unchanged meshes, thereby significantly improving the rendering speed and reducing the computing load.
[0246] According to an embodiment of the present disclosure, rendering the display object according to the rendering mesh includes: based on the vertices on the surface layer of the display object in the rendering mesh, rendering the display object according to the fact that there are no sub-display objects in the display object that are not to be displayed.
[0247] For example, when the display object is not damaged, there are no sub-display objects that are not to be displayed, that is, all sub-display objects are displayed. The display object can be rendered for the vertices on the surface layer of the rendering network of the display object to reduce the rendering calculation amount and speed up the rendering speed.
[0248] According to an embodiment of the present disclosure, generating a rendering mesh for rendering a display object based on the segmentation result of the display object further includes: determining sub-display objects involved in the interaction according to the interaction data between the interaction application object and the display object or the corresponding interaction body of the display object and the segmentation result of the display object; and modifying the index information of the meshes of the sub-display objects involved in the interaction in the rendering mesh according to the sub-display objects involved in the interaction.
[0249] According to an embodiment of the present disclosure, when the display object changes due to the interaction with the interaction application object, the sub-display objects involved in the interaction can be determined (for example, the sub-display objects that change due to the interaction, such as wall blocks that are knocked off or broken), and then, according to the sub-display objects involved in the interaction, the index information of the meshes of the sub-display objects involved in the interaction in the rendering mesh is modified. For example, when the display object is intact, the index information of the mesh of the sub-display object may only include surface vertices, and when the display object is damaged, the sub-display object at the damaged part may need to display other surfaces in addition to the surface layer. At this time, the index information of the mesh of the sub-display object at the damaged part needs to be modified so that the data required for displaying other surfaces in addition to the surface layer can be included in the sub-display object data according to the modified index information.
[0250] According to an embodiment of the present disclosure, the display object is a three-dimensional display object, and the rendering mesh is a three-dimensional rendering mesh. Modifying the index information of the meshes of the sub-display objects involved in the interaction in the rendering mesh includes: modifying the index information of the meshes of the sub-display objects involved in the interaction in the rendering mesh so that the inner walls of the gaps or holes penetrating the three-dimensional display object are rendered in the rendering meshes of the sub-display objects that are not displayed.
[0251] According to an embodiment of the present disclosure, the structure of a three-dimensional display object can be very complex. For the sake of illustration, taking the display object as a wall as an example, when the wall is intact, only two slices (one in the front and one in the back) need to be displayed. After a single-layer wall is damaged, two sliced pieces with holes and the hole walls need to be displayed. After a double-layer wall is damaged, four sliced pieces with holes need to be displayed (two of which are the outer slices, the same as those of the single-layer wall; the other two are on both sides of the hollow layer of the wall) and two hole walls (one hole wall for each layer). For a single-layer wall, all the vertices of the two mesh surfaces are stored in the rendering mesh, and the number and positions of the vertices are the same as the points in the segmentation map. For a double-layer wall, all the vertices of the 4 mesh surfaces are stored in the rendering mesh, and the number and positions of the vertices are also the same as the points in the segmentation map. When the wall is intact, only the surface vertices are used in the index of the rendering mesh. After the wall is damaged, by modifying the index information in the mesh, the effect of the wall having holes and inner hole walls is achieved, so that the shape of the wall can be quickly modified.
[0252] According to an embodiment of the present disclosure, the display object is a three-dimensional display object with a multi-layer structure, and corresponding interaction bodies are provided between the layers of the three-dimensional display object. For example, if the display object is a double-layer wall, the corresponding interaction body of the double-layer wall can be set in the hollow layer of the wall, such as the load-bearing column described above.
[0253] According to an embodiment of the present disclosure, rendering the display object according to the rendering mesh includes: performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh. For example, the sub-display object involved in the interaction can be rendered through a preset pattern (referred to as "texture mapping"), so that the sub-display object involved in the interaction presents an expected appearance.
[0254] According to an embodiment of the present disclosure, performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh includes: using at least one texture to perform texture mapping rendering on the edges of the mesh of the sub-display object involved in the interaction in the rendering mesh and the area adjacent to the edges.
[0255] According to an embodiment of the present disclosure, the texture mapping includes two types: small texture mapping and large texture mapping. The small texture mapping has a smaller size and is pasted at the corners of the hole, while the large texture mapping has a larger size and covers the entire hole opening, as Figure 2 shown. In the figure, the thick solid line represents the hole wall 210, the large texture mapping 211 covers the entire hole opening, and the small texture mapping 212 is pasted at the corners of the hole. Through texture mapping, the sub-display object involved in the interaction can be beautified, avoiding an unnatural abrupt feeling at the junction between the sub-display object involved in the interaction and other sub-display objects. Those skilled in the art can understand that according to the teachings of the embodiments of the present disclosure, one, three, or more textures can also be used to perform texture mapping rendering on the edges of the mesh of the sub-display object involved in the interaction in the rendering mesh and the area adjacent to the edges. The present disclosure does not elaborate on the implementation details.
[0256] According to an embodiment of the present disclosure, performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh includes: clearing the current texture mapping template data of the rendering mesh; rendering the object template of the current display object; and performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh according to the object template.
[0257] According to an embodiment of the present disclosure, before performing texture rendering, the current texture template data needs to be cleared first, and then the object template of the current display object is rendered. For example, according to the display object data of the current display object, the object template of the current display object is rendered, and the damaged part will be shown in the rendered object template. Then, according to the object template, texture rendering is performed on the meshes of the sub-display objects involved in the interaction in the rendering mesh. For example, texture rendering is performed on the damaged part.
[0258] According to an embodiment of the present disclosure, the sub-display object has a sub-display object collision body for determining the interaction effect between the sub-display object and the interaction application object. Wherein, the generating a rendering mesh for rendering the display object according to the segmentation result of the display object further includes: modifying the index information of the meshes of the sub-display objects involved in the interaction in the rendering mesh according to the interaction data between the interaction application object and the sub-display object collision body, so as to delete the sub-display object collision body, or set the sub-display object collision body to be unavailable, or set the volume of the sub-display object collision body to 0.
[0259] According to an embodiment of the present disclosure, the interaction effect between the sub-display object and the interaction application object can be determined through the sub-display object collision body. The sub-display object collision body can have the same geometric topology and position as the sub-display object, and at the same time has attribute values for determining the interaction effect, such as collision volume or collision body availability. When the interaction between the interaction application object and the display object acts on the sub-display object, the interaction effect can be determined according to the attribute values of the sub-display object collision body. For example, the collision volume of the sub-display object collision body can be used to determine whether the sub-display object is knocked off, broken or deformed by the interaction. The larger the collision volume, the easier it is to produce a collision effect with the interaction application object, that is, the more easily it is affected by the interaction. When the collision volume is 0 or the collision body availability is set to be unavailable, it does not hinder the interaction, which is equivalent to deleting the sub-display object collision body, and the corresponding sub-display object is no longer displayed or is displayed as transparent.
[0260] According to an embodiment of the present disclosure, the rendering of the display object according to the rendering mesh includes at least one of the following operations: applying visual basic characteristics to the rendering mesh; applying texture characteristics to the rendering mesh; applying lighting characteristics to the rendering mesh.
[0261] According to an embodiment of the present disclosure, the visual basic characteristics include shape, roughness, etc., the texture characteristics include color information, and the lighting characteristics include ambient light information, diffuse reflection information, etc.
[0262] Figure 3 The flowchart of an object processing method according to an embodiment of the present disclosure is shown. This method can be executed by a server, for example.
[0263] As Figure 3 shown, an object processing method includes:
[0264] Step S301, obtaining display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0265] Step S302, sending the display object data to a client for displaying the display object.
[0266] The above technical solution realizes the display of a display object by splitting the display object into sub-display objects and displaying the sub-display objects according to the sub-display object data. This solution displays or updates the object in units of sub-display objects, improves the display efficiency, improves the real-time performance of the display, and helps to improve the interaction efficiency, real-time performance, and accuracy in multi-party interaction applications.
[0267] According to an embodiment of the present disclosure, the display object may be split locally on the server side to obtain the sub-display object data of the sub-display objects. For example, the display object may be split on the server side to obtain the sub-display object data of the sub-display objects, and then the sub-display object data is sent to the client. Alternatively, the server may obtain pre-generated sub-display object data and then send the sub-display object data to the client. This method can reduce the computing load of the client and is applicable to scenarios of multi-client interaction.
[0268] According to an embodiment of the present disclosure, the sub-display object data of the sub-display objects may be obtained from the client. For example, in a multi-client interaction scenario, the display object may be split locally on the client side to obtain the sub-display object data of the sub-display objects, thereby reducing the computing load of the server side.
[0269] According to an embodiment of the present disclosure, splitting the display object includes: splitting the display object according to a preset method. For example, the display object may be split according to the position and / or shape of the preset sub-display objects. By pre-splitting the display object, compared with the real-time splitting method, the performance overhead can be significantly reduced, making the scene synchronization of each client simpler and more real-time. For example, in a multi-party interactive online game, it is necessary to ensure the synchronization of the wall shapes between multiple clients. The data of the meshes used in the game engine is of floating-point type, and it is impossible to ensure the consistency of the calculation results of different clients. Therefore, if it is split in real time, the wall shapes seen by different clients are very likely to be different. Unless the entire wall mesh is synchronized, but the data volume of the mesh is very large, so it will add a lot of pressure to the network. However, for pre-splitting, only the wall ID and the ID of the wall block need to be synchronized between the clients, with a small data volume and it is easy to ensure consistency.
[0270] According to an embodiment of the present disclosure, the split display object includes: determining a position involved in the interaction of the display object according to interaction data of an interaction application object with the display object or a corresponding interaction entity of the display object, and splitting the display object according to the position involved in the interaction of the display object.
[0271] According to an embodiment of the present disclosure, the position involved in the interaction may be a direct action position of the interaction application object on the display object (or the corresponding interaction entity of the display object), or a position where the display object (or the corresponding interaction entity of the display object) is affected by the interaction.
[0272] For example, when the interaction application object is a bullet and the display object is a wall, the position involved in the interaction may be the landing point of the bullet on the wall, or may also be the wall area affected by the impact of the bullet.
[0273] According to an embodiment of the present disclosure, the display object may have one or more corresponding interaction entities, and the interaction of the corresponding interaction entity with the interaction application object may be used to replace the interaction of the display object with the interaction application object, and the display object may be split according to the interaction situation of the corresponding interaction entity with the interaction application object. For example, when the display object is a wall, the corresponding interaction entity may be a load-bearing column in the wall; when the display object is a floor, the corresponding interaction entity may be the floor joist.
[0274] Setting the corresponding interaction entity can reduce the jitter caused when a character interacts (e.g., collides) with the display object. For example, when the wall is split into multiple wall blocks, when the character collides with the wall, it may collide with multiple wall blocks, resulting in abnormal jitter of the screen and causing unnecessary deterioration of the display effect. By setting fewer corresponding interaction entities, it is considered that the character interacts with the display object only when the character interacts with the corresponding interaction entity (e.g., when the character touches the display object and the travel path or the extension line of the travel path of the character intersects with the corresponding interaction entity), and the display object is split according to the position involved in the interaction, which can effectively reduce the computational load and avoid abnormal jitter of the screen.
[0275] According to an embodiment of the present disclosure, sub-display object data of the sub-display object involved in the interaction may be determined according to interaction data of the interaction application object with the display object or a corresponding interaction entity of the display object. For example, the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, and attributes of the interaction application object.
[0276] According to embodiments of the present disclosure, the impacts of different interaction data on display objects may be different. For example, digging and smashing belong to different interaction types, the positions on the display objects they involve may be different, and the degrees of damage to the display objects may also be different. Therefore, the positions involved in the interaction can be determined according to different interaction types, and then the segmentation method and the sub-display object data of the sub-display objects involved in the interaction can be determined.
[0277] In addition, when any one of the interaction operation angle, interaction operation speed, interaction operation force, and the attributes of the interaction application object (for example, different weapons) is different, the positions on the display objects they involve may be different, and the degrees of damage to the display objects may also be different. For example, the position areas on the wall involved by a grenade vertically thrown onto the wall and a grenade obliquely thrown onto the wall may be different. The grenade obliquely thrown onto the wall may involve a larger wall position area, while the grenade vertically thrown onto the wall may cause a greater degree of damage. For example, for a hammer hitting a wall at the same inclination angle, a greater speed or force may cause a larger wall area and more serious damage. For example, when a laser and magic act on a wall, the wall positions involved and the degrees of damage may be different. The wall position area involved by magic may be larger and may cause more serious damage. For example, tools such as shovels or crowbars used to dig a wall at the same speed or force, digging at a specific inclination angle may affect a larger wall area and cause more serious damage.
[0278] Therefore, the positions involved in the interaction can be determined according to different interaction data, and then the segmentation method and the sub-display object data of the sub-display objects involved in the interaction can be determined.
[0279] According to embodiments of the present disclosure, the method further includes: obtaining display object update data, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display an updated display object.
[0280] According to an embodiment of the present disclosure, the designated sub-display object may be a sub-display object that has changed among the sub-display objects of the display object, and the additional display object may be a newly added display object other than the display object. For example, in a scenario of shooting a wall, the designated sub-display object may be the wall blocks that are damaged or knocked off, such as the wall block where the direct action point of the interaction (e.g., the contact point between the shrapnel and the wall surface) is located and the wall block that is affected by the interaction although it does not include the direct action point of the interaction. For example, although a wall block is not directly hit by the shrapnel, but the surrounding wall blocks are all knocked off by the shrapnel, then this wall block will also fall, that is, this wall block is also a designated sub-display object. The additional display object may be the wall blocks that fall to the ground, or the fragments obtained after the knocked-off wall blocks are broken, or the damaged patterns around the hole in the wall and on the hole wall, which are used to beautify the hole and the hole wall and vividly simulate the real appearance of the damage (hereinafter referred to as "texture map").
[0281] Figure 2 Fig. shows an exemplary texture map schematic diagram according to an embodiment of the present disclosure.
[0282] According to an embodiment of the present disclosure, the texture map includes two types: small texture map and large texture map. The small texture map has a smaller size and is pasted at the corners of the hole, and the large texture map has a larger size and covers the entire hole opening, as Figure 2 shown. The thick solid line in the figure represents the hole wall 210, the large texture map 211 covers the entire hole opening, and the small texture map 212 is pasted at the corners of the hole.
[0283] According to an embodiment of the present disclosure, compared with the display object, at least one or more of the following of the designated sub-display object have changed: color, shape, transparency, texture, pattern, material.
[0284] According to an embodiment of the present disclosure, the additional display object data is used to determine at least one or more of the following of the additional display object: position, color, shape, transparency, texture, pattern, material.
[0285] According to an embodiment of the present disclosure, based on the interaction data between the interaction application object and the display object or the corresponding interaction body of the display object, at least one or more of the following may be determined to generate the display object update data: the designated sub-display object, the updated sub-display object data of the designated sub-display object, the additional display object, the additional display object data.
[0286] According to an embodiment of the present disclosure, wherein the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, the attributes of the interaction application object.
[0287] As described above, according to an embodiment of the present disclosure, based on the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object, the position involved in the interaction of the display object can be determined. Based on this position, it can be determined which sub-display objects will change, and these sub-display objects are used as designated sub-display objects. At the same time, the change mode of the sub-display object can be determined according to the interaction data, such as the degree of damage (e.g., being knocked off, broken, or deformed), or color or transparency or texture or pattern changes (e.g., in a magic scene, it can change from one color to another color, become transparent, or change to another texture or pattern, etc.), or material changes (e.g., changing from stone to air or having no material), so as to determine the updated sub-display object data of the designated sub-display object. The updated sub-display object data can be used to describe one or more of the above-mentioned changed characteristics of the designated sub-display object, and the updated designated sub-display object is displayed according to the updated sub-display object data, thereby displaying the updated display object.
[0288] According to an embodiment of the present disclosure, the material of the sub-display object can be used together with the interaction data to determine the impact of the interaction on the sub-display object. For example, the sub-display object can have the material "stone", and after the sub-display object is knocked off, the material of the sub-display object can be set to "air" or "no material". In this way, when there is an interaction application object interacting with this sub-display object again, the sub-display object can be regarded as non-existent, that is, it does not collide with the interaction application object.
[0289] According to an embodiment of the present disclosure, a physical scene can be constructed for the sub-display object. The sub-display object can have a polyhedral geometric contour, and it can be determined whether it interacts with the interaction application object according to this geometric contour. For example, when the interaction application object is a bullet, it can be determined whether the sub-display object changes due to this interaction, that is, whether the sub-display object should be regarded as a designated sub-display object, according to whether the bullet intersects with the polyhedron of the sub-display object when it contacts the display object. After the sub-display object is knocked off, the polyhedron of the sub-display object is deleted from the physical scene. After deletion, the sub-display object will no longer interact with the interaction application object, and the user can also observe the scene on the other side of the display object through the hole formed after the sub-display object is knocked off.
[0290] According to an embodiment of the present disclosure, the additional display object and the additional display object data can be determined based on the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object.
[0291] According to an embodiment of the present disclosure, the additional display object may be interaction-generated, such as a wall hole texture map, a stone falling on the ground, etc. Different interaction results can be determined according to the interaction data, such as the fragmentation condition of the wall block, the splashing condition of the broken stones, etc., and then different additional display objects can be determined, such as texture maps of different sizes and textures, different positions, colors, quantities, shapes, transparencies, textures, patterns, materials (e.g., whether it constitutes an obstacle to the movement of the character), etc.
[0292] Determining the specified sub-display object and the additional display object according to the interaction data can distinguish the specified sub-display object and the additional display object corresponding to different interaction data, so as to better simulate the scenes of the real physical world.
[0293] According to an embodiment of the present disclosure, based on the interaction data of the interaction application object with the display object or the corresponding interaction body of the display object, at least one or more of the following are determined to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data, including: based on the interaction data of the interaction application object with the display object or the corresponding interaction body of the display object from one or more clients, at least one or more of the following are determined: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data.
[0294] According to an embodiment of the present disclosure, one or more clients may send the interaction data of the interaction application object with the display object or the corresponding interaction body of the display object to the server. The server determines at least one or more of the following based on the interaction data from one or more clients: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data, which can reduce the computing pressure on the client and facilitate monitoring the effectiveness of the interaction to identify invalid operations or cheating behaviors.
[0295] According to an embodiment of the present disclosure, the server may synchronously send the display object update data to the multiple clients. In this way, the consistency of the display screens among multiple clients can be ensured, and the inconsistency of the display screens caused by each client independently updating the display object can be avoided.
[0296] According to an embodiment of the present disclosure, the display object update data includes the overall rendering data or the overall display data of the updated display object; or the display object update data includes the incremental rendering data or incremental display data of the updated display object compared to the display object.
[0297] According to an embodiment of the present disclosure, the display object update data includes the overall rendering data of the updated display object, and the updated display object is rendered and displayed according to the overall rendering data. For example, the updated display object may include sub-display objects that have not changed and specified sub-display objects that have changed in the display object, and the overall rendering data may include sub-display object data of the sub-display objects that have not changed and updated sub-display object data of the specified sub-display objects that have changed. Rendering and displaying according to the overall rendering data can display the updated display object. Since overall rendering is performed, it is not necessary to distinguish which specific sub-display objects are the specified sub-display objects, and the algorithm and program implementation are relatively simple.
[0298] According to an embodiment of the present disclosure, the display object update data includes the overall display data of the updated display object, and the updated display object is displayed according to the overall display data. Since the updated display object is displayed as a whole, it is not necessary to distinguish which specific sub-display objects are the specified sub-display objects, and the algorithm and program implementation are relatively simple.
[0299] According to an embodiment of the present disclosure, the display object update data includes the incremental rendering data of the updated display object compared to the display object. Rendering according to the incremental rendering data can reduce the data transmission volume and calculation volume, improve the rendering speed, and improve the real-time performance of the display.
[0300] According to an embodiment of the present disclosure, the display object update data includes the incremental display data of the updated display object compared to the display object. Displaying according to the incremental display data can reduce the data transmission volume and calculation volume, improve the rendering speed, and improve the real-time performance of the display.
[0301] According to an embodiment of the present disclosure, obtaining the display object update data includes: obtaining the display object update data locally from the server or obtaining the display object update data from the client.
[0302] According to an embodiment of the present disclosure, obtaining the display object data includes: obtaining the display object data locally from the server, where the display object data includes display data for displaying the rendered display object. By rendering the display object on the server and sending the obtained display data after rendering to the client, the client can directly display according to the display data without performing a rendering operation, which can reduce the calculation load of the client and improve the real-time performance and smoothness of the display on the server.
[0303] According to an embodiment of the present disclosure, sending the display object data to a client for displaying the display object includes: sending only the part of the display object data that is different from the display object data previously sent to the client to the client. By sending only incremental data to the client, the amount of data transmission can be reduced, communication resources can be saved, and interaction fluency can be improved.
[0304] According to an embodiment of the present disclosure, sending the display object data to a client for displaying the display object includes: sending the display object data to a client for displaying the display object, where the display object data includes display data for displaying a rendered display object. By rendering the display object on the server side and sending the obtained display data after rendering to the client, the client can directly display according to the display data without performing a rendering operation, which can reduce the computing load of the client and improve the display real-time performance and fluency of the server side.
[0305] According to an embodiment of the present disclosure, obtaining the display object data further includes: generating a rendering mesh for rendering the display object according to the segmentation result of the display object; rendering the display object according to the rendering mesh.
[0306] For example, the rendering mesh can be Figure 1C the mesh in the floor 110 in Figure 1D and the mesh in the wall 130 in . By rendering in units of meshes, when the display object changes, only the changed meshes need to be re-rendered, and there is no need to re-render the unchanged meshes, or the previous rendering results can be directly reused for the unchanged meshes, thereby significantly improving the rendering speed and reducing the computing load.
[0307] According to an embodiment of the present disclosure, rendering the display object according to the rendering mesh includes: rendering the display object based on the vertices on the surface layer of the display object in the rendering mesh according to the fact that there are no sub-display objects in the display object that are not displayed.
[0308] For example, when the display object is not damaged, there are no sub-display objects that are not displayed, that is, all sub-display objects are displayed. The display object can be rendered for the vertices on the surface layer of the rendering network of the display object to reduce the rendering calculation amount and speed up the rendering speed.
[0309] According to an embodiment of the present disclosure, generating a rendering grid for rendering a display object based on a segmentation result of the display object further includes: determining sub-display objects involved in the interaction according to interaction data between an interaction application object and the display object or a corresponding interaction body of the display object and the segmentation result of the display object; and modifying index information of grids of the sub-display objects involved in the interaction in the rendering grid according to the sub-display objects involved in the interaction.
[0310] According to an embodiment of the present disclosure, when the display changes due to an interaction with an interaction application object, sub-display objects involved in the interaction can be determined (for example, sub-display objects that change due to the interaction, such as wall blocks that are knocked off or broken), and then, according to the sub-display objects involved in the interaction, index information of grids of the sub-display objects involved in the interaction in the rendering grid is modified. For example, when the display object is intact, the index information of the grid of the sub-display object may only include surface vertices, while when the display object is damaged, the sub-display object at the damaged part may need to display other surfaces in addition to the surface layer. At this time, the index information of the grid of the sub-display object at the damaged part needs to be modified so that data required for displaying other surfaces in addition to the surface layer can be included in the sub-display object data according to the modified index information.
[0311] According to an embodiment of the present disclosure, the display object is a three-dimensional display object, and the rendering grid is a three-dimensional rendering grid. Modifying index information of grids of sub-display objects involved in the interaction in the rendering grid includes: modifying the index information of grids of sub-display objects involved in the interaction in the rendering grid so that inner walls of gaps or holes penetrating the three-dimensional display object are rendered in the rendering grid of sub-display objects that are not displayed.
[0312] According to an embodiment of the present disclosure, the structure of a three-dimensional display object can be very complex. For the sake of illustration, taking the display object as a wall as an example, when the wall is intact, only two slices (one in the front and one in the back) need to be displayed. After a single-layer wall is damaged, two sliced pieces with holes and the hole walls need to be displayed. After a double-layer wall is damaged, four sliced pieces with holes need to be displayed (two of them are outer slices, which are the same as those of a single-layer wall; the other two are on both sides of the hollow layer of the wall), and two hole walls (one hole wall for each layer). For a single-layer wall, all vertices of the two sliced pieces are stored in the rendering grid, and the number and positions of the vertices are the same as the points in the segmentation map. For a double-layer wall, all vertices of the 4 sliced pieces are stored in the rendering grid, and the number and positions of the vertices are also the same as the points in the segmentation map. When the wall is intact, only the surface vertices are used in the index of the rendering grid. After the wall is damaged, by modifying the index information in the grid, the effect of holes in the wall and inner hole walls can be achieved, so that the shape of the wall can be quickly modified.
[0313] According to an embodiment of the present disclosure, the display object is a three-dimensional display object with a multi-layer structure, and corresponding interaction bodies are provided between the layers of the three-dimensional display object. For example, if the display object is a double-layer wall, the corresponding interaction body of the double-layer wall can be provided in the hollow layer of the wall, such as the load-bearing column described above.
[0314] According to an embodiment of the present disclosure, rendering the display object according to the rendering mesh includes: performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh. For example, the sub-display object involved in the interaction can be rendered through a preset pattern (referred to as "texture mapping"), so that the sub-display object involved in the interaction presents an expected appearance.
[0315] According to an embodiment of the present disclosure, performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh includes: using at least one texture to perform texture mapping rendering on the edges of the mesh of the sub-display object involved in the interaction in the rendering mesh and the area adjacent to the edges.
[0316] According to an embodiment of the present disclosure, the texture mapping includes two types: small texture mapping and large texture mapping. The small texture mapping has a small size and is pasted at the corners of the hole, and the large texture mapping has a large size and covers the entire hole opening, as Figure 2 shown. In the figure, the thick solid line represents the hole wall 210, the large texture mapping 211 covers the entire hole opening, and the small texture mapping 212 is pasted at the corners of the hole. Through texture mapping, the sub-display object involved in the interaction can be beautified, and the unnatural abruptness at the junction between the sub-display object involved in the interaction and other sub-display objects can be avoided. Those skilled in the art can understand that according to the teachings of the embodiments of the present disclosure, one, three or more texture mappings can also be used to perform texture mapping rendering on the edges of the mesh of the sub-display object involved in the interaction in the rendering mesh and the area adjacent to the edges. The present disclosure will not elaborate on the implementation details.
[0317] According to an embodiment of the present disclosure, performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh includes: clearing the current texture mapping template data of the rendering mesh; rendering the object template of the current display object; and performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh according to the object template.
[0318] According to an embodiment of the present disclosure, before performing texture rendering, the current texture template data needs to be cleared first, and then the object template of the current display object is rendered. For example, according to the display object data of the current display object, the object template of the current display object is rendered. The damaged part will be shown in the rendered object template. Then, according to the object template, texture rendering is performed on the meshes of the sub-display objects involved in the interaction in the rendering mesh. For example, texture rendering is performed on the damaged part.
[0319] According to an embodiment of the present disclosure, the sub-display object has a sub-display object collision body for implementing the interaction effect between the sub-display object and the interaction application object. Among them, the generating a rendering mesh for rendering the display object according to the segmentation result of the display object further includes: modifying the index information of the meshes of the sub-display objects involved in the interaction in the rendering mesh according to the interaction data between the interaction application object and the sub-display object collision body, so as to delete the sub-display object collision body, or set the sub-display object collision body to be unavailable, or set the volume of the sub-display object collision body to 0.
[0320] According to an embodiment of the present disclosure, the interaction effect between the sub-display object and the interaction application object can be determined through the sub-display object collision body. The sub-display object collision body can have the same geometric topology and position as the sub-display object, and at the same time has attribute values for determining the interaction effect, such as the collision volume, or the availability of the collision body. When the interaction between the interaction application object and the display object acts on the sub-display object, the interaction effect can be determined according to the attribute values of the sub-display object collision body. For example, the collision volume of the sub-display object collision body can be used to determine whether the sub-display object is knocked off, broken, or deformed by the interaction. The larger the volume of the collision body, the easier it is to produce a collision effect, that is, the more easily it is affected by the interaction. When the collision volume is 0 or the availability of the collision body is set to be unavailable, it does not hinder the interaction, which is equivalent to deleting the corresponding sub-display object collision body and the corresponding sub-display object is no longer displayed, or is displayed as transparent.
[0321] According to an embodiment of the present disclosure, the rendering of the display object according to the rendering mesh includes at least one of the following operations: applying visual basic characteristics to the rendering mesh; applying texture characteristics to the rendering mesh; applying lighting characteristics to the rendering mesh.
[0322] According to an embodiment of the present disclosure, the visual basic characteristics include shape, roughness, etc., the texture characteristics include color information, and the lighting characteristics include ambient light information, diffuse reflection information, etc.
[0323] Figure 4 The flowchart of the virtual object processing method according to an embodiment of the present disclosure is shown. As Figure 4 shown, the method includes:
[0324] Step S401: Obtain virtual object data, where the virtual object data includes sub-virtual object data of sub-virtual objects obtained by splitting a virtual object.
[0325] Step S402: Display the virtual object according to the virtual object data, or send the virtual object data.
[0326] According to an embodiment of the present disclosure, displaying the virtual object according to the virtual object data may, for example, display the virtual object on a local display device or on a remote device.
[0327] Figure 5 The structural block diagram of an object processing device according to an embodiment of the present disclosure is shown.
[0328] As Figure 5 shown, the object processing device according to an embodiment of the present disclosure includes:
[0329] A first acquisition module 501, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0330] A first display module 502, configured to display the display object according to the display object data.
[0331] As Figure 5 shown, according to an embodiment of the present disclosure, the object processing device further includes:
[0332] A first splitting module 503, configured to split the display object locally on the client to obtain the sub-display object data of the sub-display objects.
[0333] As Figure 5 shown, according to an embodiment of the present disclosure, the object processing device further includes:
[0334] A second acquisition module 504, configured to acquire the sub-display object data of the sub-display objects from the server.
[0335] According to an embodiment of the present disclosure, splitting the display object includes:
[0336] Splitting the display object according to a preset method.
[0337] According to an embodiment of the present disclosure, splitting the display object includes:
[0338] Determine the position involved in the interaction of the display object according to the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object, and segment the display object according to the position involved in the interaction of the display object.
[0339] According to an embodiment of the present disclosure, the object processing device further includes:
[0340] Determine the sub-display object data of the sub-display object involved in the interaction according to the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object.
[0341] According to an embodiment of the present disclosure, the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, and attributes of the interaction application object.
[0342] As Figure 5 shown, according to an embodiment of the present disclosure, the object processing device further includes:
[0343] A third acquisition module 505, configured to acquire display object update data, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display an updated display object.
[0344] According to an embodiment of the present disclosure, compared with the display object, at least one or more of the following of the specified sub-display object have changed: color, shape, transparency, texture, pattern, material.
[0345] According to an embodiment of the present disclosure, the additional display object data is used to determine at least one or more of the following of the additional display object: position, color, shape, transparency, texture, pattern, material.
[0346] According to an embodiment of the present disclosure, the object processing device further includes:
[0347] Determine at least one or more of the following according to the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data.
[0348] According to an embodiment of the present disclosure, the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, and attributes of the interaction application object.
[0349] According to an embodiment of the present disclosure, determining at least one or more of the following based on interaction data between an interaction application object and the display object or an interactive entity corresponding to the display object to generate the display object update data: the designated sub-display object, updated sub-display object data of the designated sub-display object, the additional display object, and the additional display object data includes:
[0350] Based on interaction data between an interaction application object and the display object or a corresponding interactor of the display object from one or more clients, at least one or more of the following is determined: the designated sub-display object, updated sub-display object data of the designated sub-display object, the additional display object, and the additional display object data.
[0351] According to an embodiment of the present disclosure, the object processing apparatus further includes:
[0352] Multiple clients synchronously receive the display object update data.
[0353] According to an embodiment of the present disclosure, determining at least one or more of the following based on interaction data between an interaction application object and the display object or an interactive entity corresponding to the display object to generate the display object update data: the designated sub-display object, updated sub-display object data of the designated sub-display object, the additional display object, and the additional display object data includes:
[0354] Based on interaction data between the interaction application object and the display object or the corresponding interaction body of the display object sent by the server from one or more clients, at least one or more of the following is determined: the designated sub-display object, the updated sub-display object data of the designated sub-display object, the additional display object, and the additional display object data.
[0355] According to an embodiment of the present disclosure, the object processing device, wherein:
[0356] The display object update data includes the overall rendering data of the updated display object or the overall display data of the updated display object; or
[0357] The display object update data includes incremental rendering data or incremental display data of the updated display object compared to the display object.
[0358] According to an embodiment of the present disclosure, the object processing device, wherein:
[0359] The acquiring of the display object update data includes: acquiring the display object update data from a server or acquiring the display object update data locally from a client.
[0360] According to an embodiment of the present disclosure, the object processing device further includes: updating the display object according to the updated data and displaying the updated display object.
[0361] According to an embodiment of the present disclosure, the obtaining of the display object data includes:
[0362] Obtaining display object data from a server, where the display object data includes display data for displaying a rendered display object.
[0363] According to an embodiment of the present disclosure, the obtaining of the display object data further includes:
[0364] Generating a rendering mesh for rendering the display object according to the segmentation result of the display object,
[0365] where the displaying of the display object according to the display object data includes:
[0366] Rendering the display object according to the rendering mesh.
[0367] According to an embodiment of the present disclosure, the rendering of the display object according to the rendering mesh includes:
[0368] Based on the vertices on the surface layer of the display object in the rendering mesh, rendering the display object according to the fact that there are no sub-display objects in the display object that are not to be displayed.
[0369] According to an embodiment of the present disclosure, the generating of the rendering mesh for rendering the display object according to the segmentation result of the display object further includes:
[0370] Determining the sub-display objects involved in the interaction according to the interaction data between the interaction application object and the display object or the corresponding interaction body of the display object and the segmentation result of the display object;
[0371] Modifying the index information of the mesh of the sub-display objects involved in the interaction in the rendering mesh according to the sub-display objects involved in the interaction.
[0372] According to an embodiment of the present disclosure, where the display object is a three-dimensional display object and the rendering mesh is a three-dimensional rendering mesh, modifying the index information of the mesh of the sub-display objects involved in the interaction in the rendering mesh includes:
[0373] Modifying the index information of the mesh of the sub-display objects involved in the interaction in the rendering mesh so that the inner walls of the gaps or holes penetrating the three-dimensional display object are rendered in the rendering mesh of the sub-display objects that are not to be displayed.
[0374] According to an embodiment of the present disclosure, where the display object is a three-dimensional display object with a multi-layer structure, corresponding interaction bodies are provided between the layers of the three-dimensional display object.
[0375] According to an embodiment of the present disclosure, rendering the display object according to the rendering mesh includes:
[0376] Performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh.
[0377] According to an embodiment of the present disclosure, performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh includes:
[0378] Performing texture mapping rendering on the edges of the mesh of the sub-display object involved in the interaction in the rendering mesh and the area adjacent to the edges using at least one texture.
[0379] According to an embodiment of the present disclosure, performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh includes:
[0380] Clearing the current texture mapping template data of the rendering mesh;
[0381] Rendering the object template of the current display object;
[0382] Performing texture mapping rendering on the mesh of the sub-display object involved in the interaction in the rendering mesh according to the object template.
[0383] According to an embodiment of the present disclosure, where the sub-display object has a sub-display object collision body for implementing the interaction effect between the sub-display object and the interaction application object,
[0384] Wherein, generating a rendering mesh for rendering the display object according to the segmentation result of the display object further includes:
[0385] Modifying the index information of the mesh of the sub-display object involved in the interaction in the rendering mesh according to the interaction data between the interaction application object and the sub-display object collision body to delete the sub-display object collision body, or set the sub-display object collision body to unavailable, or set the volume of the sub-display object collision body to 0.
[0386] According to an embodiment of the present disclosure, where rendering the display object according to the rendering mesh includes at least one of the following operations:
[0387] Applying visual basic characteristics to the rendering mesh;
[0388] Applying texture characteristics to the rendering mesh;
[0389] Apply lighting characteristics to the rendered mesh.
[0390] Figure 6 The structural block diagram of an object processing device according to an embodiment of the present disclosure is shown.
[0391] As Figure 6 shown, an object processing device includes:
[0392] A fourth acquisition module 601, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0393] A first sending module 602, configured to send the display object data to a client for displaying the display object.
[0394] As Figure 6 shown, according to an embodiment of the present disclosure, the object processing device further includes:
[0395] A second splitting module 603, configured to locally split the display object on the server side to obtain sub-display object data of the sub-display objects.
[0396] As Figure 6 shown, according to an embodiment of the present disclosure, the object processing device further includes:
[0397] A fifth acquisition module 604, configured to acquire sub-display object data of the sub-display objects from the client.
[0398] According to an embodiment of the present disclosure, where splitting the display object includes:
[0399] Split the display object according to a preset method.
[0400] According to an embodiment of the present disclosure, splitting the display object includes:
[0401] According to interaction data of an interaction application object with the display object or with a corresponding interaction entity of the display object, determine positions involved in the interaction of the display object, and split the display object according to the positions involved in the interaction of the display object.
[0402] According to an embodiment of the present disclosure, the object processing device further includes:
[0403] According to interaction data of an interaction application object with the display object or with a corresponding interaction entity of the display object, determine sub-display object data of sub-display objects involved in the interaction.
[0404] According to an embodiment of the present disclosure, the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, and attributes of the interaction application object.
[0405] As Figure 6 shown, according to an embodiment of the present disclosure, the object processing device further includes:
[0406] A sixth acquisition module 605, configured to acquire display object update data, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display an updated display object.
[0407] According to an embodiment of the present disclosure, compared with the display object, at least one or more of the following of the specified sub-display object have changed: color, shape, transparency, texture, pattern, material.
[0408] According to an embodiment of the present disclosure, the additional display object data is used to determine at least one or more of the following of the additional display object: position, color, shape, transparency, texture, pattern, material.
[0409] According to an embodiment of the present disclosure, the object processing device further includes:
[0410] Based on the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object, determine at least one or more of the following to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data.
[0411] According to an embodiment of the present disclosure, the interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation force, and attributes of the interaction application object.
[0412] According to an embodiment of the present disclosure, the determining at least one or more of the following to generate the display object update data based on the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object includes:
[0413] Determine at least one or more of the following based on interaction data of an interaction application object with the display object or a corresponding interaction body of the display object from one or more clients: the specified sub-display object, updated sub-display object data of the specified sub-display object, the additional display object, and additional display object data.
[0414] According to an embodiment of the present disclosure, the object processing device further includes:
[0415] Synchronously send the display object update data to the multiple clients.
[0416] According to an embodiment of the present disclosure, the object processing device, wherein:
[0417] The display object update data includes overall rendering data or overall display data of the updated display object; or
[0418] The display object update data includes incremental rendering data or incremental display data of the updated display object compared to the display object.
[0419] According to an embodiment of the present disclosure, the object processing device, wherein:
[0420] The obtaining of the display object update data includes: obtaining the display object update data locally from the server or obtaining the display object update data from the client.
[0421] According to an embodiment of the present disclosure, wherein the sending of the display object data to the client for displaying the display object includes:
[0422] Only send the part of the display object data that is different from the display object data previously sent to the client to the client.
[0423] According to an embodiment of the present disclosure, the sending of the display object data to the client for displaying the display object includes:
[0424] Send the display object data to the client for displaying the display object, wherein the display object data includes display data for displaying the rendered display object.
[0425] According to an embodiment of the present disclosure, the obtaining of the display object data further includes:
[0426] Generate a rendering grid for rendering the display object according to the segmentation result of the display object;
[0427] Render the display object according to the rendering grid.
[0428] According to an embodiment of the present disclosure, rendering the display object according to the rendering grid includes:
[0429] Based on the vertices of the surface layer of the display object in the rendering grid, rendering the display object according to the fact that there are no sub-display objects in the display object that are not to be displayed.
[0430] According to an embodiment of the present disclosure, generating a rendering grid for rendering the display object according to the segmentation result of the display object further includes:
[0431] Determining the sub-display objects involved in the interaction according to the interaction data between the interaction application object and the display object or the corresponding interaction body of the display object and the segmentation result of the display object;
[0432] Modifying the index information of the grid of the sub-display objects involved in the interaction in the rendering grid according to the sub-display objects involved in the interaction.
[0433] According to an embodiment of the present disclosure, where the display object is a three-dimensional display object and the rendering grid is a three-dimensional rendering grid, modifying the index information of the grid of the sub-display objects involved in the interaction in the rendering grid includes:
[0434] Modifying the index information of the grid of the sub-display objects involved in the interaction in the rendering grid so that the inner wall of the notch or hole penetrating the three-dimensional display object is rendered in the rendering grid of the sub-display objects that are not to be displayed.
[0435] According to an embodiment of the present disclosure, where the display object is a three-dimensional display object with a multi-layer structure, and the corresponding interaction bodies are arranged between the layers of the three-dimensional display object.
[0436] According to an embodiment of the present disclosure, rendering the display object according to the rendering grid includes:
[0437] Performing texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid.
[0438] According to an embodiment of the present disclosure, performing texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid includes:
[0439] Performing texture mapping rendering on the edges of the grids of the sub-display objects involved in the interaction in the rendering grid and the areas adjacent to the edges using at least one texture.
[0440] According to an embodiment of the present disclosure, performing texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid includes:
[0441] Clear the current texture template data of the rendering mesh;
[0442] Render the object template of the current display object;
[0443] According to the object template, perform texture mapping rendering on the meshes of the sub-display objects involved in the interaction in the rendering mesh.
[0444] According to an embodiment of the present disclosure, wherein the sub-display object has a sub-display object collision body for implementing the interaction effect between the sub-display object and the interaction application object,
[0445] Wherein, generating a rendering mesh for rendering a display object according to the segmentation result of the display object further includes:
[0446] According to the interaction data between the interaction application object and the sub-display object collision body, modify the index information of the meshes of the sub-display objects involved in the interaction in the rendering mesh to delete the sub-display object collision body, or set the sub-display object collision body to unavailable, or set the volume of the sub-display object collision body to 0.
[0447] According to an embodiment of the present disclosure, wherein rendering the display object according to the rendering mesh includes at least one of the following operations:
[0448] Apply visual basic characteristics to the rendering mesh;
[0449] Apply texture characteristics to the rendering mesh;
[0450] Apply lighting characteristics to the rendering mesh.
[0451] Figure 7 Shows a structural block diagram of a virtual object processing device according to an embodiment of the present disclosure.
[0452] As Figure 7 shown, a virtual object processing device includes:
[0453] A seventh acquisition module 701, configured to acquire virtual object data, wherein the virtual object data includes sub-virtual object data of sub-virtual objects obtained by segmenting a virtual object;
[0454] A processing module 702, configured to display the virtual object according to the virtual object data, or send the virtual object data.
[0455] Figure 8 Shows a structural block diagram of a client according to an embodiment of the present disclosure.
[0456] As Figure 8 shown, a client includes:
[0457] The eighth acquisition module 801 is configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0458] The third display module 802 is configured to display the display object according to the display object data.
[0459] Figure 9 The structural block diagram of a server according to an embodiment of the present disclosure is shown.
[0460] As Figure 9 shown, a server includes:
[0461] The ninth acquisition module 901 is configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object;
[0462] The second sending module 902 is configured to send the display object data to a client for displaying the display object.
[0463] According to an embodiment of the present disclosure, a method for transforming a virtual reality object is provided, including:
[0464] Acquire virtual reality object data of a virtual reality object, where the virtual reality object data includes sub-virtual reality object data of sub-virtual reality objects obtained by splitting the virtual reality object;
[0465] Determine sub-virtual reality objects involved in the transformation according to the transformation application object and transformation data of the virtual reality object;
[0466] Acquire virtual reality object transformation data, where the virtual reality object transformation data includes transformation sub-virtual reality object data of the sub-virtual reality objects involved in the transformation and / or additional virtual reality object data of additional virtual reality objects, and the virtual reality object transformation data is used to render or display the transformation result of the virtual reality object.
[0467] According to an embodiment of the present disclosure, virtual reality may refer to VR (Virtual Reality), and its concept may also include augmented reality (AR, Augmented Reality). The concepts of VR and AR can be obtained from related fields, and the present disclosure will not elaborate on this.
[0468] According to an embodiment of the present disclosure, a virtual reality object may refer to an item presented in a virtual reality scene. For example, it includes a building such as a wall, a floor, a ceiling, etc. According to an embodiment of the present disclosure, the way of obtaining sub-virtual reality objects by splitting a virtual reality object may be the same as the way of splitting a display object into sub-display objects in the foregoing embodiments.
[0469] According to an embodiment of the present disclosure, "transformation" may refer to the transformation of a building including a wall, a floor, a ceiling, etc. According to an embodiment of the present disclosure, the transformation method may be various ways of interacting with a display object discussed in the foregoing embodiments. For example, tools such as a pickaxe or a crowbar can be used to dig holes or make openings in the wall, floor, and ceiling. That is, the transformation method may include the destruction or change of a virtual reality object such as a wall, a floor, a ceiling, or its sub-virtual reality object (for example, a wall block).
[0470] According to an embodiment of the present disclosure, the virtual reality object transformation data includes the overall rendering data or the overall display data of the transformed virtual reality object; or the virtual reality object transformation data includes the incremental rendering data or the incremental display data of the transformed virtual reality object compared with the previous virtual reality object.
[0471] According to an embodiment of the present disclosure, when a virtual reality object is transformed, for example, when it is destroyed, the transformation result of the virtual reality object can be rendered or displayed, so that the sub-display object involved in the transformation changes, so as to realize the update of the virtual reality object. In this way, it is not necessary to update the entire virtual reality object data every time the virtual reality object changes, which significantly reduces the computational load, reduces resource consumption, improves the real-time performance of the display, and improves the efficiency, real-time performance, and accuracy of interaction in a multi-party interaction application scenario. Moreover, the virtual reality object transformation solution according to the embodiment of the present disclosure can be used to provide a virtual reality solution for building decoration. For example, the effect of the decoration plan can be intuitively understood by performing various transformations on the building in the virtual reality scene.
[0472] According to an embodiment of the present disclosure, there is provided a virtual reality object transformation device, including:
[0473] An acquisition module, configured to acquire virtual reality object data of a virtual reality object, where the virtual reality object data includes sub-virtual reality object data of sub-virtual reality objects obtained by splitting the virtual reality object;
[0474] A virtual reality transformation module, configured to determine the sub-virtual reality objects involved in the transformation according to the transformation application object and the transformation data of the virtual reality object;
[0475] A virtual reality rendering module, configured to obtain virtual reality object transformation data, where the virtual reality object transformation data includes transformation sub-virtual reality object data of sub-virtual reality objects involved in the transformation and / or additional virtual reality object data of additional virtual reality objects, and the virtual reality object transformation data is used to render or display the transformation result of the virtual reality object.
[0476] According to an embodiment of the present disclosure, a virtual reality object transformation solution can be applied to a virtual reality device in related technologies to implement a virtual reality object transformation device.
[0477] An embodiment of the present disclosure also discloses an electronic device, which includes a memory and a processor; wherein, the memory is used to store one or more computer instructions, and the one or more computer instructions are executed by the processor to implement any of the above method steps.
[0478] Figure 10 The structural diagram of a computer system suitable for implementing the object processing method according to an embodiment of the present disclosure is shown.
[0479] As Figure 10 shown, the computer system 1000 includes a processing unit 1001, which can execute various processes in the above embodiments according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage section 1008 into a random access memory (RAM) 1003. In the RAM 1003, various programs and data required for the operation of the system 1000 are also stored. The processing unit 1001, the ROM 1002, and the RAM 1003 are connected to each other through a bus 1004. An input / output (I / O) interface 1005 is also connected to the bus 1004.
[0480] The following components are connected to the I / O interface 1005: an input section 1006 including a keyboard, a mouse, etc.; an output section 1007 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc. and a speaker, etc.; a storage section 1008 including a hard disk, etc.; and a communication section 1009 including a network interface card such as a LAN card, a modem, etc. The communication section 1009 performs communication processing via a network such as the Internet. A drive 1010 is also connected to the I / O interface 1005 as needed. A removable medium 1011, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1010 as needed, so that a computer program read from it can be installed into the storage section 1008 as needed. Among them, the processing unit 1001 can be implemented as a processing unit such as a CPU, a GPU, a TPU, an FPGA, an NPU, etc.
[0481] In particular, according to an embodiment of the present disclosure, the above-described method can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product that includes a computer program tangibly embodied on and readable by a machine, the computer program including program code for performing the object processing method. In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 1009, and / or installed from the removable medium 1011.
[0482] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of code, or a part thereof that contains one or more executable instructions for implementing a specified logical function. It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur in an order different from that noted in the drawings. For example, two consecutive blocks shown may actually be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified functions or operations, or by a combination of dedicated hardware and computer instructions.
[0483] The units or modules described in the embodiments of the present disclosure can be implemented in software or in hardware. The described units or modules can also be provided in a processor, and the names of these units or modules do not in some cases constitute a limitation on the units or modules themselves.
[0484] As another aspect, the embodiments of the present disclosure also provide a computer-readable storage medium, which can be the computer-readable storage medium included in the device described in the above embodiments; or it can be a computer-readable storage medium that exists separately and is not assembled into the device. The computer-readable storage medium stores one or more programs, and the one or more programs are used by one or more processors to execute the methods described in the embodiments of the present disclosure.
[0485] The above description is only a preferred embodiment of the present disclosure and an explanation of the applied technical principles. Those skilled in the art should understand that the scope of the invention involved in the embodiments of the present disclosure is not limited to the technical solutions formed by the specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the inventive concept. For example, the technical solutions formed by mutually replacing the above features with the technical features (but not limited to) disclosed in the embodiments of the present disclosure that have similar functions.
Claims
1. An object processing method, applied to a client, the method comprising: Obtaining display object data, wherein the display object data includes sub-display object data of sub-display objects obtained by splitting a display object; splitting the display object includes: determining a position involved in the interaction of the display object according to interaction data between an interaction application object and the display object or a corresponding interaction entity of the display object, and splitting the display object according to the position involved in the interaction of the display object; Displaying the display object according to the display object data; Obtaining display object update data from a server, the display object update data including updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, the display object update data being used to render or display an updated display object, wherein the specified sub-display object is a sub-display object that has changed among the sub-display objects of the display object, and the additional display object is a newly added display object other than the display object; the specified sub-display object is a part of multiple sub-display objects of the display object; the display object update data includes incremental rendering or display data for updating the display object generated by the server according to interaction data received from multiple clients, and the display object update data is synchronously sent by the server to multiple clients; Rendering or updating the display of the displayed display object according to the display object update data.
2. The method according to claim 1, further comprising: Splitting the display object locally on the client to obtain sub-display object data of the sub-display objects.
3. The method according to claim 1, further comprising: Obtaining sub-display object data of the sub-display objects from the server.
4. The method according to any one of claims 1-3, wherein The splitting of the display object includes: Splitting the display object according to a preset method.
5. The method according to claim 1, further comprising: Determining sub-display object data of a sub-display object involved in the interaction according to interaction data between an interaction application object and the display object or a corresponding interaction entity of the display object.
6. The method according to claim 1, wherein, The interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation strength, attributes of the interaction application object.
7. The method according to claim 1, wherein Compared with the display object, at least one or more of the following of the specified sub-display object have changed: color, shape, transparency, texture, pattern, material.
8. The method according to claim 1 or 7, wherein The additional display object data is used to determine at least one or more of the following of the additional display object: position, color, shape, transparency, texture, pattern, material.
9. The method according to claim 1 or 7, further comprising: Determining at least one or more of the following according to interaction data between an interaction application object and the display object or a corresponding interaction entity of the display object to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data.
10. The method according to claim 9, wherein, The interaction data includes at least one or more of the following: the type of interaction operation, the angle of the interaction operation, the speed of the interaction operation, the intensity of the interaction operation, and the attributes of the interaction application object.
11. The method according to claim 9, wherein, Based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object, determining at least one or more of the following to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data, including: Based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object from one or more clients, determining at least one or more of the following: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data.
12. The method according to claim 11, further comprising: Multiple clients synchronously receive the display object update data.
13. The method according to claim 9, wherein, Based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object, determining at least one or more of the following to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data, including: Based on the interaction data of the interaction application object with the display object or the corresponding interaction entity of the display object from one or more clients sent by the server, determining at least one or more of the following: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data.
14. The method according to claim 1 or 7, wherein: The display object update data includes the overall rendering data or the overall display data of the updated display object; or The display object update data includes the incremental rendering data or the incremental display data of the updated display object compared to the display object.
15. The method according to claim 1 or 7, wherein: Obtaining the display object update data includes: obtaining the display object update data from the server or obtaining the display object update data locally from the client.
16. The method according to claim 1 or 7 further comprises: Displaying the updated display object according to the display object update data.
17. The method according to claim 1, wherein obtaining the display object data includes: Obtaining the display object data from the server, where the display object data includes the display data for displaying the rendered display object.
18. The method according to any one of claims 1-3, wherein obtaining the display object data further includes: Generating a rendering mesh for rendering the display object according to the segmentation result of the display object, wherein displaying the display object according to the display object data includes: Rendering the display object according to the rendering mesh.
19. The method according to claim 18, wherein rendering the display object according to the rendering mesh includes: Based on the fact that there are no sub-display objects in the display object that are not to be displayed, render the display object based on the vertices of the surface layer of the display object in the rendering grid.
20. The method according to claim 18, wherein the generating a rendering grid for rendering a display object according to the segmentation result of the display object further comprises: Determine the sub-display objects involved in the interaction according to the interaction data between the interaction application object and the display object or the corresponding interaction body of the display object and the segmentation result of the display object; Modify the index information of the grids of the sub-display objects involved in the interaction in the rendering grid according to the sub-display objects involved in the interaction.
21. The method according to claim 20, wherein, When the display object is a three-dimensional display object and the rendering grid is a three-dimensional rendering grid, modifying the index information of the grids of the sub-display objects involved in the interaction in the rendering grid includes: Modify the index information of the grids of the sub-display objects involved in the interaction in the rendering grid so that the inner walls of the gaps or holes penetrating the three-dimensional display object are rendered in the rendering grids of the sub-display objects that are not to be displayed.
22. The method according to claim 20, wherein The display object is a three-dimensional display object with a multi-layer structure, and the corresponding interaction bodies are arranged between the layers of the three-dimensional display object.
23. The method according to claim 20, wherein the rendering the display object according to the rendering grid comprises: Perform texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid.
24. The method according to claim 23, wherein the performing texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid comprises: Use at least one texture to perform texture mapping rendering on the edges of the grids of the sub-display objects involved in the interaction in the rendering grid and the areas adjacent to the edges.
25. The method according to claim 23, wherein the performing texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid comprises: Clear the current texture template data of the rendering grid; Render the object template of the current display object; According to the object template, perform texture mapping rendering on the grids of the sub-display objects involved in the interaction in the rendering grid.
26. The method according to claim 18, wherein, The sub-display object has a sub-display object collision body for implementing the interaction effect between the sub-display object and the interaction application object, wherein, the generating a rendering grid for rendering a display object according to the segmentation result of the display object further comprises: Modify the index information of the grids of the sub-display objects involved in the interaction in the rendering grid according to the interaction data between the interaction application object and the sub-display object collision body, so as to delete the sub-display object collision body, or set the sub-display object collision body to be unavailable, or set the volume of the sub-display object collision body to 0.
27. The method according to claim 18, wherein, The rendering the display object according to the rendering grid includes at least one of the following operations: Apply visual basic characteristics to the rendering grid; Apply texture characteristics to the rendering grid; Apply lighting characteristics to the rendering grid.
28. An object processing method applied to a server, the method comprising: Obtain display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object; splitting the display object includes: determining a position involved in the interaction of the display object according to interaction data of an interaction-imposing object with the display object or with a corresponding interaction entity of the display object, and splitting the display object according to the position involved in the interaction of the display object; the interaction data includes data received from multiple clients; Send the display object data to a client for displaying the display object; Obtain display object update data, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display an updated display object, where the specified sub-display object is a sub-display object that has changed among the sub-display objects of the display object, and the additional display object is a newly added display object other than the display object; the specified sub-display object is a partial object among multiple sub-display objects of the display object; the display object update data includes incremental rendering or display data for updating the display object generated by the server according to interaction data received from multiple clients; Synchronously send the display object update data for rendering or updating the display object to multiple clients.
29. The method according to claim 28, further comprising: Locally split the display object on the server side to obtain sub-display object data of the sub-display objects.
30. The method according to claim 28, further comprising: Obtain sub-display object data of the sub-display objects from a client.
31. The method according to any one of claims 28-30, wherein, Splitting the display object includes: Splitting the display object according to a preset method.
32. The method according to claim 28, further comprising: Determine sub-display object data of a sub-display object involved in the interaction according to interaction data of an interaction-imposing object with the display object or with a corresponding interaction entity of the display object.
33. The method according to claim 31, wherein, The interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation strength, attributes of the interaction-imposing object.
34. The method according to claim 28, wherein, Compared with the display object, at least one or more of the following of the specified sub-display object have changed: color, shape, transparency, texture, pattern, material.
35. The method according to claim 28 or 34, wherein, The additional display object data is used to determine at least one or more of the following of the additional display object: position, color, shape, transparency, texture, pattern, material.
36. The method according to claim 28 or 34, further comprising: Determine at least one or more of the following according to interaction data of an interaction-imposing object with the display object or with a corresponding interaction entity of the display object to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, the additional display object data.
37. The method according to claim 36, wherein, The interaction data includes at least one or more of the following: interaction operation type, interaction operation angle, interaction operation speed, interaction operation strength, and attributes of the interaction application object.
38. The method according to claim 36, wherein, Based on the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object, determine at least one or more of the following to generate the display object update data: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data, including: Based on the interaction data between the interaction application object from one or more clients and the display object or the corresponding interaction entity of the display object, determine at least one or more of the following: the specified sub-display object, the updated sub-display object data of the specified sub-display object, the additional display object, and the additional display object data.
39. The method according to claim 38, further comprising: Synchronously sending the display object update data to the multiple clients.
40. The method according to claim 28 or 34, wherein: The display object update data includes the overall rendering data or the overall display data of the updated display object; or The display object update data includes the incremental rendering data or incremental display data of the updated display object compared to the display object.
41. The method according to claim 28 or 34, wherein: Obtaining the display object update data includes: obtaining the display object update data locally from the server or obtaining the display object update data from the client.
42. The method according to any one of claims 28 - 30, wherein, Sending the display object data to the client for displaying the display object includes: Only sending the part of the display object data that is different from the display object data previously sent to the client to the client.
43. The method according to claim 28, wherein sending the display object data to the client for displaying the display object includes: Sending the display object data to the client for displaying the display object, wherein the display object data includes the display data for displaying the rendered display object.
44. The method according to any one of claims 28-30, wherein obtaining the display object data further includes: Generating a rendering grid for rendering the display object according to the segmentation result of the display object; Rendering the display object according to the rendering grid.
45. The method according to claim 44, wherein rendering the display object according to the rendering grid includes: Based on the vertices on the surface layer of the display object in the rendering grid, rendering the display object according to the fact that there are no sub-display objects in the display object that are not to be displayed.
46. The method according to claim 44, wherein generating a rendering grid for rendering the display object according to the segmentation result of the display object further includes: Determining the sub-display objects involved in the interaction according to the interaction data between the interaction application object and the display object or the corresponding interaction entity of the display object and the segmentation result of the display object; Modify the index information of the grid of the sub-display object involved in the interaction in the rendering grid according to the sub-display object involved in the interaction.
47. The method according to claim 46, wherein The display object is a three-dimensional display object, and the rendering grid is a three-dimensional rendering grid. Modifying the index information of the grid of the sub-display object involved in the interaction in the rendering grid includes: Modify the index information of the grid of the sub-display object involved in the interaction in the rendering grid so that the inner wall of the notch or hole penetrating the three-dimensional display object is rendered in the rendering grid of the sub-display object that is not displayed.
48. The method according to claim 46, wherein, The display object is a three-dimensional display object with a multi-layer structure, and the corresponding interaction bodies are arranged between the layers of the three-dimensional display object.
49. The method according to claim 46, wherein the rendering of the display object according to the rendering grid includes: Perform texture mapping rendering on the grid of the sub-display object involved in the interaction in the rendering grid.
50. The method according to claim 49, wherein the performing texture mapping rendering on the grid of the sub-display object involved in the interaction in the rendering grid includes: Use at least one texture to perform texture mapping rendering on the edges of the grid of the sub-display object involved in the interaction in the rendering grid and the area adjacent to the edges.
51. The method according to claim 49, wherein the performing texture mapping rendering on the grid of the sub-display object involved in the interaction in the rendering grid includes: Clear the current texture template data of the rendering grid; Render the object template of the current display object; According to the object template, perform texture mapping rendering on the grid of the sub-display object involved in the interaction in the rendering grid.
52. The method according to claim 44, wherein, The sub-display object has a sub-display object collision body for realizing the interaction effect between the sub-display object and the interaction application object. Wherein, the generating a rendering grid for rendering a display object according to the segmentation result of the display object further includes: Modify the index information of the grid of the sub-display object involved in the interaction in the rendering grid according to the interaction data between the interaction application object and the sub-display object collision body, so as to delete the sub-display object collision body, or set the sub-display object collision body to be unavailable, or set the volume of the sub-display object collision body to 0.
53. The method according to claim 44, wherein, The rendering of the display object according to the rendering grid includes at least one of the following operations: Apply visual basic characteristics to the rendering grid; Apply texture characteristics to the rendering grid; Apply lighting characteristics to the rendering grid.
54. A virtual object processing method, including: Obtain virtual object data, wherein the virtual object data includes sub-virtual object data of sub-virtual objects obtained by segmenting a virtual object; the segmenting of the virtual object includes: determining the positions involved in the interaction of the virtual object according to the interaction data between the interaction application object and the virtual object or the corresponding interaction body of the virtual object, and segmenting the virtual object according to the positions involved in the interaction of the virtual object; Display the virtual object according to the virtual object data, or send the virtual object data. Obtain virtual object update data, where the virtual object update data includes updated sub-virtual object data of a specified sub-virtual object and / or additional virtual object data of an additional virtual object, and the virtual object update data is used to render or display an updated virtual object. Among them, the specified sub-virtual object is a sub-virtual object that has changed among the sub-virtual objects of the virtual object, and the additional virtual object is a newly added virtual object other than the virtual object; Render or display-update the displayed virtual object according to the virtual object update data, or send the virtual object update data of the virtual object data that has been sent; Among them, the specified sub-virtual object is part of the multiple sub-virtual objects of the virtual object; the virtual object update data includes incremental rendering or display data for updating the virtual object generated by the server according to the interaction data received from multiple clients, and the virtual object update data is synchronously sent by the server to multiple clients.
55. An object processing device, applied to a client, includes: A first acquisition module, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object; splitting the display object includes: determining the position involved in the interaction of the display object according to the interaction data between the interaction application object and the display object or the corresponding interaction body of the display object, and splitting the display object according to the position involved in the interaction of the display object; A first display module, configured to display the display object according to the display object data; A third acquisition module, configured to acquire display object update data from the server, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display-update the display object. Among them, the specified sub-display object is a sub-display object that has changed among the sub-display objects of the display object, and the additional display object is a newly added display object other than the display object, and the specified sub-display object is part of the multiple sub-display objects of the display object; the display object update data includes incremental rendering or display data for updating the display object generated by the server according to the interaction data received from multiple clients, and the display object update data is synchronously sent by the server to multiple clients; Among them, the first display module is further configured to render or display-update the displayed display object according to the display object update data.
56. An object processing device, applied to a server, includes: A fourth acquisition module, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object; the splitting of the display object includes: determining a position involved in the interaction of the display object according to interaction data of an interaction application object with the display object or a corresponding interaction entity of the display object, and splitting the display object according to the position involved in the interaction of the display object; the interaction data includes data received from multiple clients; A first sending module, configured to send the display object data to a client for displaying the display object; A sixth acquisition module, configured to acquire display object update data, where the display object update data includes updated sub-display object data of a specified sub-display object and / or additional display object data of an additional display object, and the display object update data is used to render or display an updated display object, where the specified sub-display object is a sub-display object that has changed among the sub-display objects of the display object, the additional display object is a newly added display object other than the display object, and the specified sub-display object is a part of multiple sub-display objects of the display object; the display object update data includes incremental rendering or display data for updating the display object generated by the server according to interaction data received from multiple clients; Wherein, the first sending module is further configured to synchronously send the display object update data for rendering or updating the display object to multiple clients.
57. A virtual object processing device, including: A seventh acquisition module, configured to acquire virtual object data, where the virtual object data includes sub-virtual object data of sub-virtual objects obtained by splitting a virtual object; the splitting of the virtual object includes: determining a position involved in the interaction of the virtual object according to interaction data of an interaction application object with the virtual object or a corresponding interaction entity of the virtual object, and splitting the virtual object according to the position involved in the interaction of the virtual object; A processing module, configured to display the virtual object according to the virtual object data, or send the virtual object data, Wherein, virtual object update data is acquired, and the virtual object update data includes updated sub-virtual object data of a specified sub-virtual object and / or additional virtual object data of an additional virtual object, and the virtual object update data is used to render or display an updated virtual object, where the specified sub-virtual object is a sub-virtual object that has changed among the sub-virtual objects of the virtual object, and the additional virtual object is a newly added virtual object other than the virtual object, Wherein, the processing module is further configured to render or update the displayed virtual object according to the virtual object update data, or send the virtual object update data of the virtual object data that has been sent; Among them, the specified sub-virtual object is a partial object among multiple sub-virtual objects of the virtual object; the virtual object update data includes incremental rendering or display data for updating the virtual object generated by the server according to interaction data received from multiple clients, and the virtual object update data is synchronously sent by the server to multiple clients.
58. A client, comprising: An eighth acquisition module, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object; the splitting of the display object includes: determining a position involved in the interaction of the display object according to interaction data between an interaction application object and the display object or a corresponding interaction body of the display object, and splitting the display object according to the position involved in the interaction of the display object; A third display module, configured to display the display object according to the display object data, Among them, display object update data is acquired from a server, and the display object update data includes updated sub-display object data of specified sub-display objects and / or additional display object data of additional display objects, and the display object update data is used to render or display an updated display object, where the specified sub-display object is a sub-display object that has changed among the sub-display objects of the display object, the additional display object is a newly added display object other than the display object, and the specified sub-display object is a partial object among multiple sub-display objects of the display object; the display object update data includes incremental rendering or display data for updating the display object generated by the server according to interaction data received from multiple clients, and the display object update data is synchronously sent by the server to multiple clients; Among them, the third display module is further configured to render or update the display of the displayed display object according to the display object update data.
59. A server, comprising: A ninth acquisition module, configured to acquire display object data, where the display object data includes sub-display object data of sub-display objects obtained by splitting a display object; the splitting of the display object includes: determining a position involved in the interaction of the display object according to interaction data between an interaction application object and the display object or a corresponding interaction body of the display object, and splitting the display object according to the position involved in the interaction of the display object; the interaction data includes data received from multiple clients; A second sending module, configured to send the display object data to a client for displaying the display object, Among them, update data of a display object is obtained. The update data of the display object includes update sub-display object data of specified sub-display objects and / or additional display object data of additional display objects. The update data of the display object is used to render or display an updated display object. The specified sub-display objects are partial objects among multiple sub-display objects of the display object. The update data of the display object includes incremental rendering or display data for updating the display object generated by the server according to interaction data received from multiple clients. Among them, the second sending module is further configured to synchronously send the update data of the display object for rendering or updating the display object to multiple clients.
60. A virtual reality object transformation method, comprising: Obtaining virtual reality object data of a virtual reality object, where the virtual reality object data includes sub-virtual reality object data of sub-virtual reality objects obtained by splitting the virtual reality object. Splitting the virtual reality object includes: determining a position involved in the interaction of the virtual reality object according to interaction data of an interaction application object with the virtual reality object or a corresponding interaction body of the virtual reality object, and splitting the virtual reality object according to the position involved in the interaction of the virtual reality object. Determining sub-virtual reality objects involved in the transformation according to a transformation application object and transformation data of the virtual reality object. Obtaining virtual reality object transformation data, where the virtual reality object transformation data includes transformation sub-virtual reality object data of the sub-virtual reality objects involved in the transformation and / or additional virtual reality object data of additional virtual reality objects. The virtual reality object transformation data is used to render or display a transformation result of the virtual reality object. Among them, the sub-virtual reality objects involved in the transformation are the sub-virtual reality objects that have changed among the sub-virtual reality objects of the virtual reality object. The additional virtual reality objects are newly added virtual reality objects other than the virtual reality object. The sub-virtual reality objects involved in the transformation are partial objects among multiple sub-virtual reality objects of the virtual reality object. The virtual reality object transformation data includes incremental rendering or display data for updating the virtual reality object generated by the server according to interaction data received from multiple clients. The virtual reality object transformation data is synchronously sent by the server to multiple clients.
61. A virtual reality object transformation device, comprising: An obtaining module, configured to obtain virtual reality object data of a virtual reality object, where the virtual reality object data includes sub-virtual reality object data of sub-virtual reality objects obtained by splitting the virtual reality object. Splitting the virtual reality object includes: determining a position involved in the interaction of the virtual reality object according to interaction data of an interaction application object with the virtual reality object or a corresponding interaction body of the virtual reality object, and splitting the virtual reality object according to the position involved in the interaction of the virtual reality object. A virtual reality transformation module, configured to determine sub-virtual reality objects involved in the transformation according to the transformation data of the transformation application object and the virtual reality object; A virtual reality rendering module, configured to obtain virtual reality object transformation data, where the virtual reality object transformation data includes transformation sub-virtual reality object data of the sub-virtual reality objects involved in the transformation and / or additional virtual reality object data of additional virtual reality objects, and the virtual reality object transformation data is used to render or display the transformation result of the virtual reality object. Among them, the sub-virtual reality objects involved in the transformation are the sub-virtual reality objects that have changed among the sub-virtual reality objects of the virtual reality object, the additional virtual reality objects are newly added virtual reality objects other than the virtual reality object, and the sub-virtual reality objects involved in the transformation are part of the multiple sub-virtual reality objects of the virtual reality object; the virtual reality object transformation data includes incremental rendering or display data for updating the virtual reality object generated by the server according to the interaction data received from multiple clients, and the virtual reality object transformation data is synchronously sent by the server to multiple clients.
62. An electronic device, including a memory and a processor; wherein, The memory is used to store one or more computer instructions, and when the one or more computer instructions are executed by the processor, the method steps described in any one of claims 1-54, 60 are implemented.
63. A computer-readable storage medium, on which computer instructions are stored, and when the computer instructions are executed by a processor, the method steps described in any one of claims 1-54, 60 are implemented.
Citation Information
Patent Citations
Method and device for handling collision of obstacles, storage medium and electronic device
CN108579085A
Three-dimensional graphics display system
US6392644B1