Target virtual object state compression method and target virtual object state synchronization method
Patent Information
- Application Number
- CN202611110846.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-24
- Publication Date
- 2026-10-20
AI Technical Summary
然而,这类方法容易出现关键信息因过度压缩而丢失,非重要冗余数据占用过多带宽的问题,难以满足高动态、多模态虚拟场景对精细化状态管理的需求
[0011]根据本说明书实施例的第七方面,提供了一种芯片,其存储有计算机程序,该计算机程序被芯片执行时实现所述第一方面或第二方面所提供方法的步骤。
Smart Images

Figure FT_1 
Figure FT_2 
Figure FT_3
Abstract
Description
Technical Field
[0001] The embodiments in this specification relate to the field of digital product development technology, and in particular to a method for compressing the state of a target virtual object and a method for synchronizing the state of a target virtual object. Background Technology
[0002] With the rapid development of virtual reality, cloud digital products, and large-scale multiplayer online applications, the number of objects and the complexity of interactions in virtual scenes are growing exponentially, leading to a dramatic increase in the amount of object state data that needs to be transmitted and stored. Under the constraints of limited bandwidth resources and computing power, processing all virtual object state data with full volume and equal precision would not only cause network congestion and rendering delays, but also significantly increase the load on servers and terminals.
[0003] Existing technologies typically employ fixed strategies based on distance or update frequency, such as determining the compression ratio solely based on the spatial distance between the object and the observer, or applying the same quantization threshold to all objects in the scene. However, these methods are prone to issues such as the loss of critical information due to over-compression and excessive bandwidth consumption by non-essential redundant data, making it difficult to meet the demands of highly dynamic, multimodal virtual scenes for refined state management. Summary of the Invention
[0004] In view of this, embodiments of this specification provide a method for compressing the state of a target virtual object. One or more embodiments of this specification also relate to a method for synchronizing the state of a target virtual object, a device for compressing the state of a target virtual object, a device for synchronizing the state of a target virtual object, a computing device, a computer-readable storage medium, a chip, and a computer program product, to address the technical deficiencies existing in the prior art.
[0005] According to a first aspect of the embodiments of this specification, a method for compressing the state of a target virtual object is provided, comprising: Obtain object information of the target virtual object; Semantic analysis is performed on the object information to determine the first compression index of the target virtual object, wherein the first compression index is used to describe the semantic importance of the target virtual object; Based on the target area where the target virtual object is located in the virtual scene, a second compression index of the target virtual object is determined, wherein the second compression index is used to describe the degree of state change of the regional virtual object within the target area; Based on the first compression index and the second compression index, the state of the target virtual object is compressed.
[0006] According to a second aspect of the embodiments of this specification, a method for synchronizing the state of a target virtual object is provided, comprising: Obtain the state compression information of the target virtual object, wherein the state compression information is obtained by compression based on the method described in the first aspect above; Synchronize the state compression information.
[0007] According to a third aspect of the embodiments of this specification, a target virtual object state compression apparatus is provided, comprising: The first acquisition module is configured to acquire object information of the target virtual object; The first analysis module is configured to perform semantic analysis on object information and determine the first compression index of the target virtual object, wherein the first compression index is used to describe the semantic importance of the target virtual object. The second analysis module is configured to determine a second compression index of the target virtual object based on the target area where the target virtual object is located in the virtual scene. The second compression index is used to describe the degree of state change of the regional virtual object within the target area. The compression module is configured to compress the state of the target virtual object based on a first compression metric and a second compression metric.
[0008] According to a fourth aspect of the embodiments of this specification, a target virtual object state synchronization device is provided, comprising: The second acquisition module is configured to acquire the state compression information of the target virtual object, wherein the state compression information is obtained by compression based on the target virtual object state compression method described in the first aspect above; The synchronization module is configured to synchronize the state compression information.
[0009] According to a fifth aspect of the embodiments of this specification, a computing device is provided, comprising: Memory and processor; The memory is used to store computer programs / instructions, and the processor is used to execute the computer programs / instructions, which, when executed by the processor, implement the steps of the method provided in the first or second aspect above.
[0010] According to a sixth aspect of the embodiments of this specification, a computer-readable storage medium is provided that stores a computer program / instructions that, when executed by a processor, implement the steps of the methods of the first or second aspect described above.
[0011] According to a seventh aspect of the embodiments of this specification, a chip is provided that stores a computer program, which, when executed by the chip, implements the steps of the method provided in the first or second aspect.
[0012] According to an eighth aspect of the embodiments of this specification, a computer program product is provided, including a computer program / instructions that, when executed by a processor, implement the steps of the method provided in the first or second aspect described above.
[0013] This specification provides a target virtual object state compression method according to one embodiment. First, by acquiring the object information of the target virtual object and performing semantic analysis on the object information, a first compression index is determined to describe the semantic importance of the target virtual object. This allows the state compression process to combine the semantic importance of the target virtual object in the virtual scene to determine the compression basis. Therefore, target virtual objects with higher semantic importance can receive a more suitable compression processing method during the state compression process, reducing the possibility of unreasonable compression of key state information caused by applying the same compression rules to different virtual objects. Furthermore, by determining a second compression index based on the target region where the target virtual object is located in the virtual scene, a second compression index is determined to describe the degree of state change of virtual objects within the target region. This allows the state compression process to further incorporate the state changes of virtual objects within the target region, rather than processing solely based on the target virtual object itself or a fixed spatial range. Therefore, when the degree of state change within the target region is high, a compression method more suitable for the high-change scene can be used for the target virtual object; when the degree of state change within the target region is low, redundant processing of state information in the low-change scene is reduced, thereby improving the adaptability of state compression to the dynamic changes of the virtual scene. Therefore, by compressing the state of the target virtual object based on the first and second compression metrics, both the semantic importance of the target virtual object and the degree of state change within the target region can be used as the basis for state compression. This allows the compression process to adapt to both the virtual object and the region where the virtual object is located. Consequently, the matching degree between the state compression strategy and the synchronization requirements of the virtual object can be improved, reducing the situation where low-value state information occupies too many transmission resources. Furthermore, it is beneficial to ensure that state information with high semantic importance or high degree of regional change receives more appropriate compression processing under limited synchronization resources, thereby meeting the needs of highly dynamic, multimodal virtual scenes for refined state management. Attached Figure Description
[0014] Figure 1 This is a flowchart of a target virtual object state compression method provided in one embodiment of this specification; Figure 2 This is a flowchart of a target virtual object state synchronization method provided in one embodiment of this specification; Figure 3 This is a schematic diagram of the architecture of a target virtual object state compression system provided in one embodiment of this specification; Figure 4This is a flowchart illustrating a method for compressing and synchronizing the state of a target virtual object according to an embodiment of this specification. Figure 5 This is a schematic diagram of the structure of a target virtual object state compression device provided in one embodiment of this specification; Figure 6 This is a schematic diagram of the structure of a target virtual object state synchronization device provided in one embodiment of this specification; Figure 7 This is a structural block diagram of a computing device provided in one embodiment of this specification.
[0015] Obviously, the accompanying drawings are only some illustrative examples of embodiments of this specification. For those skilled in the art, other drawings can be obtained from these drawings without any creative effort. Detailed Implementation
[0016] Many specific details are set forth in the following description to provide a full understanding of this specification. However, this specification can be implemented in many other ways than those described herein, and those skilled in the art can make similar extensions without departing from the spirit of this specification. Therefore, this specification is not limited to the specific implementations disclosed below.
[0017] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of one or more embodiments of this specification. The singular forms “a,” “described,” and “the” used in one or more embodiments of this specification and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in one or more embodiments of this specification refers to and includes any or all possible combinations of one or more associated listed items. For example, “A and / or B” can represent three cases: only A exists, only B exists, and both A and B exist, where A and B can be singular or plural. The character “ / ” generally indicates that the preceding and following objects are in an “or” relationship. “At least one of the following” or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of A, B, or C can represent: A, B, C, “A and B,” “A and C,” “B and C,” or “A and B and C,” where A, B, and C can be single or multiple. In one or more embodiments of this specification, the term "at least one" means "one or more," and "multiple" means "two or more." The term "comprising" is an open-ended description and should be understood as "including but not limited to," and may include other content in addition to what has been described.
[0018] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another and are not necessarily used to describe a specific order or sequence. It should be understood that such information can be interchanged where appropriate so that the embodiments of this specification described herein can be implemented in orders other than those described herein. For example, first may also be referred to as second without departing from the scope of one or more embodiments of this specification, and similarly, second may also be referred to as first. Furthermore, the terms "comprising," "having," "including," and variations thereof all indicate non-exclusive inclusion, such as a process, method, system, product, or device that comprises a series of steps or units, not limited to the steps or units explicitly listed, but may also include other steps or units not explicitly listed or inherent in the process itself.
[0019] Furthermore, it should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in one or more embodiments of this specification are obtained through open-source datasets or public datasets that comply with their license agreements, or are obtained with full authorization from the relevant parties. Moreover, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.
[0020] First, the terms and concepts used in one or more embodiments of this specification will be explained.
[0021] Player focus: This refers to the spatial location, virtual object, or interactive event that the target client or player primarily focuses on within the virtual scene.
[0022] Scene state snapshot: This is a data set that records the state of the virtual scene within the current frame or the current synchronization period. For example, the server can generate a scene state snapshot when the current synchronization period arrives and read the object information of the target virtual object that needs to be state compressed from the scene state snapshot.
[0023] Predefined grids: These are grid units obtained by pre-dividing the virtual scene into spatial units. For example, the virtual scene map can be divided into multiple rectangular grids according to its horizontal and vertical coordinate ranges, and the rectangular grid where the target virtual object is currently located can be used as the target area.
[0024] State change rate: This parameter describes how quickly or how densely the state of virtual objects changes within the same spatial region. For example, within a spatial partition, if multiple virtual objects frequently move, use skills, and experience changes in health, that spatial partition can have a high state change rate.
[0025] Region state entropy: A parameter used to characterize the complexity or instability of the state changes of virtual objects within a target area. For example, in a combat area, when the movement direction, skill release status, and health of multiple virtual objects change frequently, that combat area can correspond to a high region state entropy value.
[0026] High-entropy region: A spatial region with a high state entropy value or a high rate of change of state. For example, in a multiplayer online virtual scene, the area where multiple player characters and non-player characters are engaged in combat can be identified as a high-entropy region.
[0027] Low-entropy region: A spatial region with a low state entropy value or a low rate of change of state. For example, in a multiplayer online virtual scene, the edge of a town where there are fewer players and fewer changes in the state of virtual objects can be identified as a low-entropy region.
[0028] The preset strategy mapping table is a data table used to record the correspondence between different combinations of compression metrics and different compression strategies. For example, the preset strategy mapping table can record the hierarchical compression method corresponding to "high semantic importance level and high regional change level", and the quantization compression method or low-frequency synchronization method corresponding to "low semantic importance level and low regional change level".
[0029] Layered compression: This is a processing method that divides the state information of a target virtual object into different layers and then compresses them separately. For example, the position, orientation, action state, and health of the target virtual object can be divided into the base layer, while skeletal details, facial expressions, and physical side effects can be divided into the enhancement layer, and then compressed separately.
[0030] Base Layer: This is the state data layer used to maintain the basic state restoration or basic interactive availability of the target virtual object. The base layer can include at least one of the following: position, orientation, action state, health points, and basic skill state. For example, if the target virtual object is a player character, the base layer can include the player character's position, orientation, current action, and health points.
[0031] Enhancement Layer: This is a state data layer used to improve the display effect or state details of a target virtual object. The enhancement layer can include at least one of the following: skeletal details, facial expressions, physical side effects, particle effects, and display details. For example, when a target virtual object releases a skill, the enhancement layer can include additional particle effects or skeletal details during the skill release process.
[0032] Reference state frame: This is historical or baseline state data used as the basis for comparing state changes. For example, the server can use the virtual object state that has been synchronized to the target client in the previous synchronization cycle as the reference state frame, and only compress and synchronize state data that has changed relative to the reference state frame in the current synchronization cycle.
[0033] Incremental compression is a compression method based on the state differences between different synchronization cycles. For example, when the target virtual object only changes position between two adjacent synchronization cycles, only the position change can be compressed, without compressing the complete position data again.
[0034] Quantization compression is a compression method that discretizes or represents state data with low-bit values according to a preset quantization precision. For example, the continuous position coordinates of a target virtual object can be converted into lower-precision grid coordinates to reduce the amount of data corresponding to position state information.
[0035] Lossy quantization is a quantization compression method that allows for a loss of precision in state data within a preset error range. For example, for virtual environment objects far from the player's focus, the precision of their position or displayed status can be reduced to decrease the amount of synchronization data.
[0036] Low-frequency state synchronization refers to a processing method that synchronizes state compression information at a frequency lower than the normal synchronization frequency. For example, for virtual objects with low semantic importance and located in a low-entropy region, state compression information can be synchronized once every few synchronization cycles.
[0037] Layer drop based on decreasing priority: This is a processing method that gradually reduces the number of state data layers to be synchronized according to state hierarchy and object priority when network transmission resources are limited. For example, when the available bandwidth is insufficient, enhancement layer data of low semantic importance virtual objects can be dropped first, while basic layer data of high semantic importance virtual objects can be retained first.
[0038] Currently, in the field of state synchronization for large-scale multi-user online activities, the mainstream technical solutions can be mainly divided into the following categories.
[0039] The first type is incremental synchronization schemes based on difference detection. This scheme typically compares the current activity state with a baseline state and generates differentiated synchronization instructions after identifying state differences. However, this type of scheme mainly focuses on whether the state value has changed, without further distinguishing the importance of different virtual objects in terms of gameplay semantics. This can easily lead to virtual objects with lower semantic importance still consuming more synchronization resources.
[0040] The second category is a synchronization frequency reduction scheme based on client prediction. This scheme typically involves the client predicting the state of virtual objects based on motion models or input information to reduce the synchronization load on the server. However, this type of scheme is more suitable for predicting continuous physical quantities such as position and velocity, and has limited applicability to discrete states such as skill release, health changes, and interaction state switching. Furthermore, it does not compress the state data itself that still needs to be synchronized.
[0041] The third category is on-demand synchronization schemes triggered by state changes. These schemes typically trigger synchronization when the virtual object's state changes, reducing redundant transmission of unchanged states. However, after triggering synchronization, these schemes may still send relatively complete state data, failing to perform layered processing based on the importance or performance requirements of the state data. The fourth category is network path-level optimization schemes. These schemes typically improve network transmission efficiency through routing, link scheduling, or transmission path optimization. However, these schemes primarily affect the network transmission path and do not delve into the encoding, filtering, and compression processes of application-layer state data. The fifth category is client-side smoothing and buffering schemes. These schemes typically improve client-side visual performance through interpolation, buffer queues, or display smoothing strategies. However, these schemes primarily improve client-side display effects and do not directly compress the amount of state data that the server needs to transmit.
[0042] Based on this, this specification provides a method for compressing the state of a target virtual object. This specification also relates to a method for synchronizing the state of a target virtual object, a device for compressing the state of a target virtual object, a device for synchronizing the state of a target virtual object, a computing device, a computer-readable storage medium, a chip, and a computer program product, which will be described in detail in the following embodiments.
[0043] It should be noted that the embodiments of this specification can be applied to computer application scenarios that require compression and synchronization of virtual object states. Specifically, the embodiments of this specification can be applied to at least one of the following: multiplayer online activities, cloud activities, virtual reality scenarios, augmented reality scenarios, digital twin scenarios, simulation training scenarios, and metaverse interaction scenarios. For example, in a multiplayer online activity scenario, the server can use the target virtual object state compression method provided in the embodiments of this specification to compress the state information of player characters, non-player characters, virtual items, or virtual environment objects that need to be synchronized to the client within the current synchronization cycle, and synchronize the compressed state information to the target client so that the target client updates the state of the target virtual objects in the virtual scene according to the compressed state information.
[0044] Furthermore, the target virtual object state compression method provided in the embodiments of this specification is a data processing solution proposed to address technical problems such as large data volume, high network transmission resource consumption, and insufficient adaptability of compression strategies to actual synchronization requirements when virtual object state data is synchronized between computing devices. It can reduce the amount of state data transmission during virtual object state synchronization and improve the adaptability of state compression processing to the dynamic changes of virtual scenes. It belongs to the technical solution that relies on computing devices to execute and improve the data processing and network transmission process.
[0045] See Figure 1 , Figure 1 This specification illustrates a flowchart of a target virtual object state compression method according to an embodiment, which specifically includes the following steps: Step 102: Obtain the object information of the target virtual object.
[0046] It should be noted that the target virtual object refers to a virtual object in the virtual scene that requires state compression processing. The target virtual object can include at least one of the following: virtual character, virtual non-player character, virtual environment object, virtual item object, and virtual vehicle object. For example, in a multiplayer online activity scenario, the target virtual object can be a player character whose state needs to be synchronized.
[0047] Object information refers to information used to describe the object attributes, object state, or object interaction of a target virtual object. Object information may include at least one of the following: object identifier, object type, object interaction information, object location information, and status information. For example, object information may include the target virtual object's object identifier, character type, current location, current action state, and health points.
[0048] In practical applications, there are various ways to obtain object information of a target virtual object, and the specific method chosen depends on the actual situation. This specification does not limit the specific method used in this embodiment. One possible implementation of this specification involves obtaining a snapshot of the virtual scene's state during the target synchronization period and extracting the object information of the target virtual object from the snapshot. The scene state snapshot can be used to record the state of at least one virtual object within the target synchronization period. For example, in a multiplayer online activity scenario, the server can obtain a snapshot of the current virtual scene's state when the target synchronization period arrives, and, based on the object identifier of the target virtual object, read its position, orientation, action state, and health points from the scene state snapshot as the object information of the target virtual object.
[0049] In another possible implementation of this specification, the object information of the target virtual object can be obtained from the virtual object management module, the state synchronization cache, or the object state database. The virtual object management module can be used to maintain the object information of each virtual object in the virtual scene, and the state synchronization cache can be used to cache the object information of virtual objects that need to participate in state synchronization or state compression within the target synchronization period. For example, during the operation of the virtual scene, the server can maintain the correspondence between the object identifier and object information of each virtual object in real time; when state compression of the target virtual object is required, the object information of the target virtual object can be queried and obtained from this correspondence based on the object identifier of the target virtual object.
[0050] Step 104: Perform semantic analysis on the object information to determine the first compression index of the target virtual object, wherein the first compression index is used to describe the semantic importance of the target virtual object.
[0051] It should be noted that semantic analysis refers to the process of parsing and identifying information in object information that reflects the role, relationship, or interaction state of a target virtual object in a virtual scene. Semantic analysis can include at least one of object type identification, object interaction state identification, object relationship identification, and object location association identification. For example, in a multiplayer online activity scenario, the semantic analysis result corresponding to the target virtual object can be determined based on whether the target virtual object is a player character, whether it is in a combat interaction state, or whether it has an interaction relationship with the target observed object.
[0052] The first compression metric refers to an indicator determined based on the semantic analysis results of object information, used to describe the semantic importance of the target virtual object. The first compression metric may include at least one of semantic importance level, semantic importance score, semantic compression label, and semantic compression weight. For example, the first compression metric can be a high semantic importance level, a medium semantic importance level, or a low semantic importance level, or it can be a numerical weight used to represent the degree of semantic importance.
[0053] Semantic importance refers to the degree of influence a target virtual object has on state compression processing within a virtual scene. Semantic importance can be determined by at least one of the following: object type, object interaction state, object relationships, and object location associations. For example, in a multiplayer online activity scenario, an adversary virtual object interacting with the target observation object typically has a higher semantic importance than environmental virtual objects that are far from the target observation object and have not interacted with it.
[0054] In practical applications, there are various methods for performing semantic analysis on object information to determine the first compression index of the target virtual object. The specific method chosen depends on the actual situation, and this specification does not limit this approach. In one possible implementation, object information can be parsed to obtain semantic association information of the target virtual object, and this semantic association information can be matched based on preset semantic rules to determine the first compression index of the target virtual object. The preset semantic rules can be used to record the correspondence between different semantic association information and different first compression indices. The server can search for the corresponding semantic importance level in the preset semantic rules based on semantic association information such as object type, object interaction information, and object relationship information, and determine this semantic importance level as the first compression index.
[0055] In another possible implementation of this specification, object information can be parsed to obtain semantic association information of the target virtual object. This semantic association information can then be characterized to obtain semantic feature data. A first compression index can then be determined based on this semantic feature data. The semantic feature data can be used to characterize the target virtual object's object category, interaction state, object relationships, or locational relationships within the virtual scene. The server can input the semantic feature data into a semantic evaluation model to obtain the semantic importance score of the target virtual object and determine the first compression index based on the semantic importance score; alternatively, it can perform a weighted calculation based on the weights corresponding to each semantic feature data point to obtain a semantic importance score and determine the first compression index based on the semantic importance score.
[0056] For example, in a multiplayer online activity scenario, after the server obtains the object information of the target virtual object, it can parse the object information to determine that the target virtual object is an enemy player character, and that the target virtual object is in combat and performing a skill release action. Based on the above semantic association information, the server can perform semantic analysis to determine that the target virtual object has a high semantic importance in the current virtual scene, and accordingly determine the first compression index of the target virtual object.
[0057] In one optional embodiment of this specification, the semantic analysis of object information described above to determine the first compression index of the target virtual object may include the following steps: Parse object information to obtain semantic association information of the target virtual object, wherein the semantic association information includes at least one of object type and object interaction information; Based on semantic association information, the first compression index of the target virtual object is determined.
[0058] It should be noted that semantic association information refers to information within object information that reflects the object attributes, interaction state, or role of the target virtual object in a virtual scene. Semantic association information can include at least one of the following: object type, object interaction information, object relationship information, and object location association information. For example, in a multiplayer online activity scenario, semantic association information could include information such as the target virtual object being a player character, the target virtual object being in combat, or the target virtual object having an adversarial relationship with the target observed object.
[0059] Object type refers to information describing the category to which the target virtual object belongs. Object types can include at least one of the following: player character type, non-player character type, environment object type, item object type, and vehicle object type. For example, the target virtual object can be a virtual character controlled by a player or a virtual non-player character controlled by the system.
[0060] Object interaction information refers to information describing whether a target virtual object participates in interaction within a virtual scene and what kind of interaction it participates in. Object interaction information can include at least one of the following: attack status information, defense status information, skill release information, movement interaction information, and resource interaction information. For example, when a target virtual object is releasing a skill onto another virtual object, the object interaction information can include the skill release status and the skill target information.
[0061] In practical applications, there are various ways to parse object information and obtain semantic association information of the target virtual object. The specific method chosen depends on the actual situation, and this specification does not limit this approach. One possible implementation in this specification is through field parsing. Specifically, the server can read the object type field, object interaction state field, object relationship field, or object location field of the target virtual object according to preset fields in the object information, and determine the read information as semantic association information. For example, if the object information records "Object type: Player character" and "Interaction state: Skill release in progress," then the above field content can be parsed as the semantic association information of the target virtual object.
[0062] Another possible implementation of this specification can be achieved through status identifier recognition. Specifically, the server can identify the status identifier, behavior identifier, or relationship identifier carried in the object information, and determine the semantic association information corresponding to the target virtual object based on the aforementioned identifiers. For example, when the object information carries a combat identifier and a hostile relationship identifier, it can be determined that the target virtual object is in a combat interaction scenario and has a hostile relationship with the target observed object.
[0063] Furthermore, there are multiple ways to determine the first compression index of the target virtual object based on semantic association information. The specific method chosen depends on the actual situation, and this specification does not limit this approach. One possible implementation method in this specification is through rule matching. Specifically, the correspondence between semantic association information and the first compression index can be pre-configured. After obtaining the semantic association information, the semantic association information is matched with the correspondence, and the semantic importance level, semantic compression label, or semantic compression weight obtained from the match is determined as the first compression index. For example, when the semantic association information indicates that the target virtual object is an enemy player character and is in a skill release state, the first compression index of the target virtual object can be determined as a higher semantic importance level.
[0064] In another possible implementation of this specification, a first compression index for the target virtual object can be determined using a semantic evaluation model. Specifically, semantic association information corresponding to the target virtual object can be obtained, and this information can be input into a pre-trained semantic evaluation model to obtain a semantic importance score or semantic importance level for the target virtual object. The first compression index is then determined based on the semantic importance score or semantic importance level. The semantic evaluation model can be a machine learning model, which may include at least one of lightweight neural network models, decision tree models, gradient boosting models, and classification models. For example, object type, faction relationships, object interaction information, object location association information, and historical interaction data can be used as model inputs, and the semantic evaluation model can output a semantic importance score for the target virtual object.
[0065] It should be noted that historical interaction data refers to data on interactions between virtual objects and the target client, player character, or other virtual objects during historical operation. Historical interaction data can include at least one of the following: historical attack counts, historical attention counts, historical skill release counts, historical distance change data, and historical synchronization request data. For example, in a multiplayer online activity scenario, if a certain type of enemy virtual object frequently interacts with the player character in combat during a historical synchronization period, the semantic evaluation model can learn the semantic importance of that type of virtual object based on this historical interaction data.
[0066] For example, in a multiplayer online activity scenario, the server can parse the object information of the target virtual object to obtain that the object type of the target virtual object is a player character and the object interaction information is that a skill is being released. Subsequently, based on the object type and object interaction information, the server can determine that the target virtual object has a high semantic importance in the current virtual scene, and determine the high semantic importance level or the corresponding semantic importance score as the first compression index of the target virtual object.
[0067] For example, in a multiplayer online activity scenario, the object type, faction relationship, interaction state, distance from the player's focus, and player attention behavior of virtual objects can be collected from multiple historical synchronization periods to construct model training samples and train a semantic evaluation model. Within the current synchronization period, the server can input the object information of the target virtual object into the semantic evaluation model to obtain the semantic importance score of the target virtual object, and determine the first compression index of the target virtual object based on the semantic importance score. This allows the determination process of the first compression index to incorporate historical interaction data, improving the matching degree between the first compression index and the actual semantic importance of the target virtual object.
[0068] By applying the solutions of the embodiments in this specification, the first compression index can be made to correspond with semantic factors such as the object type and object interaction information of the target virtual object, thereby improving the accuracy of the first compression index in representing the semantic importance of the target virtual object, and thus providing a more accurate basis for subsequent state compression based on the first compression index.
[0069] Step 106: Based on the target area where the target virtual object is located in the virtual scene, determine the second compression index of the target virtual object, wherein the second compression index is used to describe the degree of state change of the regional virtual object within the target area.
[0070] It should be noted that a virtual scene refers to the virtual space environment in which the target virtual object resides. A virtual scene can include at least one of the following: a virtual activity map, a virtual room, a virtual battlefield, a virtual town, and a virtual instance scene. For example, in a multiplayer online activity scene, the virtual scene can be an activity map where multiple player characters and non-player characters move together.
[0071] The target region refers to the spatial area where the target virtual object is located within the virtual scene. The target region can include at least one of the following: a predefined grid region, a map tile region, a scene functional region, and an object activity region. For example, a virtual scene can be pre-divided into multiple grid regions, and the grid region where the target virtual object is currently located can be used as the target region.
[0072] A region virtual object refers to a virtual object located within a target region. A region virtual object can include at least one of the following: the target virtual object, virtual objects adjacent to the target virtual object, player characters within the target region, non-player characters within the target region, and environmental objects within the target region. For example, if the target region is a combat region, the region virtual object can include multiple player characters and non-player characters within that combat region.
[0073] The degree of state change refers to the drastic change in the state of virtual objects within a target area over time. The degree of state change can be characterized by at least one of the following: frequency of state changes, amplitude of state changes, number of state changes, and range of state changes. For example, when multiple virtual objects within a target area frequently move, release skills, or experience changes in health, the degree of state change of the virtual objects within that target area can be relatively high.
[0074] The second compression metric refers to the compression basis determined based on the degree of state change of virtual objects within the target area where the target virtual object is located. The second compression metric may include at least one of the following: regional change level, regional change score, regional compression label, and regional compression weight. For example, the second compression metric can be a high regional change level, a medium regional change level, or a low regional change level, or it can be a numerical weight used to represent the degree of state change in the target area.
[0075] In practical applications, there are multiple ways to determine the second compression index of a target virtual object based on its location within a virtual scene. The specific method chosen depends on the actual situation, and this specification does not impose any limitations on this approach. One possible implementation of this specification involves determining the target area of the target virtual object based on its location information within the virtual scene, obtaining the corresponding area state change record, and then determining the second compression index based on the area state change record. The area state change record can be used to record the state changes of virtual objects within the target area over a period of time. The server can determine the area change level of the target area based on the area state change record and use this level as the second compression index.
[0076] In another possible implementation of this specification, the degree of state change of the target area can be calculated in real time based on the object state information of the regional virtual objects within the target area where the target virtual object is located, and a second compression index can be determined based on the degree of state change. Specifically, object state information such as position changes, action changes, health changes, and skill state changes of the regional virtual objects within the target area can be obtained, and the regional change score corresponding to the target area can be determined based on the changes in the above object state information, and then the second compression index can be determined based on the regional change score.
[0077] For example, in a multiplayer online activity scenario, the server can determine that the target virtual object is located in the target area corresponding to the virtual battlefield based on the target virtual object's current location. Subsequently, the server can obtain the position changes, action changes, and health value changes of multiple regional virtual objects within the target area over a recent period of time, and determine that the degree of state change of the regional virtual objects within the target area is relatively high based on the above changes, thereby determining that the second compression index of the target virtual object is a high regional change level or the corresponding regional change score.
[0078] In one optional embodiment of this specification, before determining the second compression index of the target virtual object based on the target area where the target virtual object is located in the virtual scene, the following steps may be included: The virtual scene is divided into regions to obtain multiple candidate regions; The target region is determined from multiple candidate regions based on the position of the target virtual object in the virtual scene.
[0079] It should be noted that region division refers to the process of dividing a virtual scene into multiple spatial regions according to preset division rules. Region division can include at least one of the following: grid division, map tile division, functional region division, and logical region division. For example, in a multiplayer online activity scenario, the activity map corresponding to the virtual scene can be divided according to a predefined grid to obtain multiple grid regions.
[0080] A candidate region refers to a spatial area obtained after dividing a virtual scene into regions, which can be used to determine the target area. Candidate regions can include at least one of the following: predefined grid regions, map tile regions, combat regions, town regions, and resource regions. For example, after a virtual scene is divided into multiple predefined grids, each predefined grid region can serve as a candidate region.
[0081] The position of a target virtual object in a virtual scene refers to its spatial location within the virtual scene's coordinate system. This position can include at least one of the following: two-dimensional coordinates, three-dimensional coordinates, grid index, or region identifier. For example, the position of a target virtual object in a virtual scene can be represented by map coordinates (x, y) or by the grid number where the target virtual object is currently located.
[0082] In practical applications, there are various ways to divide a virtual scene into regions and obtain multiple candidate regions. The specific method chosen depends on the actual situation, and this specification does not limit the specific approach. One possible implementation method described in this specification is through a predefined grid division method. Specifically, a grid division rule corresponding to the virtual scene can be pre-configured, and the virtual scene can be divided into multiple predefined grid regions according to this rule to obtain multiple candidate regions. The grid division rule can be pre-determined based on the map size, scene coordinate range, or status monitoring requirements of the virtual scene. For example, the virtual scene can be divided into multiple rectangular grid regions according to the horizontal and vertical coordinate ranges, and each rectangular grid region can be considered as a candidate region.
[0083] In another possible implementation of this specification, it can also be achieved through a preset region configuration method. Specifically, multiple region boundaries can be pre-configured according to the scene functions or activity areas in the virtual scene, and multiple candidate regions can be determined based on these boundaries. The region boundaries can be used to limit the spatial range of different candidate regions within the virtual scene. For example, the virtual scene can be pre-configured as a combat area, a town area, and a resource gathering area, and these areas can be used as candidate regions respectively. In yet another possible implementation of this specification, it can also be achieved through a variable-granularity region division method. Specifically, the region division granularity corresponding to different regions can be determined based on the distribution density of virtual objects, the frequency of object activity, or the state changes in the virtual scene, and the virtual scene can be divided into regions based on the region division granularity to obtain multiple candidate regions. The region division granularity can be used to describe the spatial range size corresponding to the candidate regions. The region division granularity can include at least one of fine-grained division, medium-grained division, coarse-grained division, object density-based division, and state change-based division. For example, a finer-grained mesh can be used in areas where virtual objects are densely packed or where state changes are frequent; a coarser-grained mesh can be used in areas where virtual objects are sparsely packed or where state changes are infrequent.
[0084] In practical applications, there are various ways to determine the target region from multiple candidate regions based on the position of the target virtual object in the virtual scene. The specific method chosen depends on the actual situation, and this specification does not impose any limitations on this approach. One possible implementation of this specification involves obtaining the coordinates of the target virtual object in the virtual scene coordinate system and matching these coordinates with the corresponding region ranges of each candidate region. The candidate region containing these coordinates is then determined as the target region. For example, if the coordinates of the target virtual object fall within the coordinate range of a predefined grid region, that predefined grid region can be determined as the target region.
[0085] Another possible implementation of this specification can be achieved through a region index query. Specifically, a correspondence between location indexes and candidate regions can be pre-established. After obtaining the location of the target virtual object, the candidate region where the target virtual object is located is queried based on the location index corresponding to that location, and the queried candidate region is determined as the target region. For example, a grid index can be calculated based on the coordinates of the target virtual object, and then a predefined grid region can be queried based on the grid index, and this predefined grid region can be used as the target region.
[0086] For example, in a multi-user online activity scenario, the server can divide the activity map into multiple candidate regions according to predefined grid partitioning rules. Subsequently, the server can obtain the current position of the target virtual object in the activity map, and determine the target region where the target virtual object is currently located from the multiple candidate regions based on the coordinate range or grid index corresponding to the current position.
[0087] The solution implemented in this specification can provide a clear spatial range for subsequently determining the second compression index based on the target region, so that the second compression index can correspond to the state changes in the actual area where the target virtual object is located.
[0088] In one optional embodiment of this specification, determining the second compression index of the target virtual object based on the target area where the target virtual object is located in the virtual scene may include the following steps: Based on the object status information of the virtual object in multiple status monitoring windows, the status change information of the virtual object in the region is determined; Based on the state change information, the second compression index of the target virtual object is determined.
[0089] It should be noted that a status monitoring window refers to a time interval used to monitor the status information of virtual objects within a region. A status monitoring window can include at least one of the following: a monitoring window corresponding to the current synchronization cycle, a monitoring window corresponding to historical synchronization cycles, a monitoring window corresponding to multiple consecutive frames, or a monitoring window corresponding to a preset duration. For example, the five most recent consecutive synchronization cycles can be used as multiple status monitoring windows to monitor the status changes of virtual objects within the target region.
[0090] The object state information of a virtual area object refers to information used to describe the running state of the virtual area object within the state monitoring window. The object state information of a virtual area object can include at least one of the following: position state information, action state information, health value state information, skill state information, posture state information, and physical effect state information. For example, when the virtual area object is a virtual character, the object state information can include the virtual character's position, action state, and health value within multiple state monitoring windows.
[0091] State change information refers to information used to describe the state changes of virtual objects in a region, determined based on their state information across multiple state monitoring windows. State change information can include at least one of the following: state change frequency, state change magnitude, number of state changes, state change range, and state change level. For example, if multiple virtual objects in a target region frequently move and switch skill states within multiple state monitoring windows, the state change information can indicate that the state change frequency of virtual objects within that target region is high.
[0092] In practical applications, there are multiple ways to determine the state change information of a virtual object within multiple state monitoring windows, and the specific method chosen depends on the actual situation. This specification does not impose any limitations on this approach. One possible implementation method is through comparison of adjacent state monitoring windows. Specifically, the object state information of the same virtual object within adjacent state monitoring windows can be obtained and compared to determine whether the virtual object has undergone a state change between adjacent windows and the magnitude of that change. The state change information is then determined based on the comparison results of multiple virtual objects. For example, the position coordinates, action markers, and health points of the virtual object within adjacent state monitoring windows can be compared, and the number and magnitude of changes can be counted to obtain the state change information corresponding to the target area.
[0093] Another possible implementation of this specification is through regional statistics. Specifically, the object status information of multiple virtual objects within the target area can be statistically analyzed within each status monitoring window, and the overall status change of the virtual objects within the target area can be determined based on the changes in the statistical results between multiple status monitoring windows. For example, the number of moving objects, skill-releasing objects, and objects with changing health points in the target area can be statistically analyzed within multiple status monitoring windows, and the status change information can be determined based on the changes in these numbers between different status monitoring windows.
[0094] In practical applications, there are multiple ways to determine the second compression index of the target virtual object based on state change information. The specific method chosen depends on the actual situation, and this specification does not impose any limitations on this approach. One possible implementation method in this specification is through threshold matching. Specifically, the correspondence between state change information and the second compression index can be pre-configured. After determining the state change information, the state change information is matched with the correspondence, and the matched region change level, region compression label, or region compression weight is determined as the second compression index. For example, if the state change information indicates that the frequency of state changes of the virtual objects in the target region is higher than the first threshold, the second compression index can be determined as a higher region change level.
[0095] In another possible implementation of this specification, it can also be achieved through a change score calculation method. Specifically, the region change score can be calculated based on at least one of the following: state change frequency, state change amplitude, or state change count, and the second compression index of the target virtual object can be determined based on the region change score. For example, the region change score can be calculated based on the position change amplitude, action change count, and health value change amplitude of the regional virtual object within the target region, and this region change score can be used as the second compression index, or the corresponding region change level can be determined based on the region change score.
[0096] For example, in a multiplayer online activity scenario, the server can obtain the position status information, action status information, and health status information of multiple virtual objects within a target area in the most recent multiple status monitoring windows, and compare the changes in the above object status information between multiple status monitoring windows. When the comparison results show that multiple virtual objects within the target area move frequently, frequently release skills, and have significant changes in health, the server can determine that the status change information corresponding to the target area represents a high degree of status change, and determine a second compression index for the target virtual object based on this status change information.
[0097] By applying the solutions of the embodiments in this specification, the second compression index can reflect the state changes of the target area in the time dimension, reducing the situation where the compression basis is determined solely based on the current position of the target virtual object or the state at a single moment, and improving the matching degree between the second compression index and the degree of state changes of the virtual objects in the target area.
[0098] Step 108: Perform state compression on the target virtual object based on the first compression index and the second compression index.
[0099] It should be noted that state compression refers to the process of reducing or simplifying the representation of state-related data of a target virtual object. State compression can include at least one of the following: state item filtering, state data encoding, state precision adjustment, state update frequency adjustment, and state data packaging. For example, when the target virtual object is a player character, state-related data such as the player character's position, orientation, action status, and health points can be compressed.
[0100] In practical applications, there are various ways to compress the state of a target virtual object based on the first compression index and the second compression index. The specific method is selected according to the actual situation, and the embodiments in this specification do not limit this. In one possible implementation of this specification, the compression precision corresponding to the target virtual object can be determined according to the first compression index and the second compression index, and the state-related data of the target virtual object can be compressed according to the compression precision. Specifically, when the first compression index indicates that the semantic importance of the target virtual object is high, or the second compression index indicates that the state change of the regional virtual objects within the target area is high, a higher compression precision can be used to compress the state of the target virtual object; when the first compression index indicates that the semantic importance of the target virtual object is low, or the second compression index indicates that the state change of the regional virtual objects within the target area is low, a lower compression precision can be used to compress the state of the target virtual object.
[0101] In another possible implementation of this specification, the state retention range corresponding to the target virtual object can be determined according to the first compression index and the second compression index, and the state of the target virtual object can be compressed based on the state retention range. Specifically, the state items that need to be retained can be determined from the object information of the target virtual object according to the first compression index and the second compression index, and the state items that need to be retained can be compressed. For state items that are not determined to need to be retained, the update frequency can be reduced, the representation precision can be reduced, or they can be left unprocessed in the current compression process. For example, when the semantic importance of the target virtual object is high, the position, orientation, action state, and health of the target virtual object can be retained; when the semantic importance of the target virtual object is low, the position and action state can be retained, and the compression precision of some display-related state items can be reduced.
[0102] For example, in a multiplayer online activity scenario, the server can determine the semantic importance of the target virtual object in the current virtual scene based on a first compression index, and determine the degree of state change of the regional virtual objects within the target area based on a second compression index. If the target virtual object is a player character engaged in combat, and multiple regional virtual objects within the target area frequently move and change their skill states, the server can apply higher compression precision to the target virtual object and retain more state items related to its operational state. If the target virtual object is an environmental object far from the interaction area, and the degree of state change within the target area is low, the server can reduce the representation precision or update frequency of the corresponding state data.
[0103] The scheme implemented in this specification first obtains the object information of the target virtual object and performs semantic analysis on the object information to determine a first compression index for describing the semantic importance of the target virtual object. This allows the state compression process to combine the semantic importance of the target virtual object in the virtual scene to determine the compression basis. Therefore, target virtual objects with higher semantic importance can receive a more suitable compression processing method during the state compression process, reducing the possibility of unreasonable compression of key state information caused by applying the same compression rules to different virtual objects. Furthermore, by determining a second compression index for describing the degree of state change of virtual objects within the target area based on the target area where the target virtual object is located in the virtual scene, the state compression process can further combine the state changes of virtual objects within the target area, rather than processing based solely on the target virtual object itself or a fixed spatial range. Therefore, when the degree of state change within the target area is high, a compression method more suitable for the high-change scene can be used for the target virtual object; when the degree of state change within the target area is low, redundant processing of state information in the low-change scene is reduced, thereby improving the adaptability between state compression and the dynamic changes of the virtual scene. Therefore, by compressing the state of the target virtual object based on the first and second compression metrics, both the semantic importance of the target virtual object and the degree of state change within the target region can be used as the basis for state compression. This allows the compression process to adapt to both the importance of the virtual object itself and the intensity of change in the region where the virtual object is located. This improves the matching degree between the state compression strategy and the synchronization requirements of the virtual object, reduces the situation where low-value state information occupies too many transmission resources, and helps ensure that state information with high semantic importance or high degree of regional change receives more appropriate compression processing under limited synchronization resources.
[0104] In one optional embodiment of this specification, the state compression of the target virtual object based on the first compression index and the second compression index may include the following steps: Based on the first compression index and the second compression index, the target compression strategy of the target virtual object is determined, wherein the target compression strategy is used to constrain the state compression range and state compression method of the target virtual object. Based on the state compression range, extract the target state information from the object information; The target state information is compressed based on the state compression method.
[0105] It should be noted that the target compression strategy refers to the strategy information determined based on the first compression index and the second compression index, used to guide the state compression processing of the target virtual object. The target compression strategy may include at least one of the following: state compression range, state compression method, state compression accuracy, state update frequency, and state data retention rules. For example, the target compression strategy may instruct the compression of the target virtual object's position, orientation, action state, and health points, and use incremental encoding to process position change data.
[0106] State compression range refers to the range of information within the target virtual object that needs to participate in state compression processing. The state compression range can include at least one of the following: basic operational state range, interaction state range, attribute state range, display state range, and physical effect state range. For example, when the target virtual object is a player character, the state compression range can include the player character's position, orientation, action state, health points, and skill state.
[0107] State compression refers to the data processing method used to compress target state information. State compression methods can include at least one of the following: incremental compression, quantization compression, encoding compression, hierarchical compression, and low-frequency compression. For example, incremental compression can be used for the position coordinates of a target virtual object, while quantization compression can be used for its orientation angle.
[0108] Target state information refers to the state information extracted from object information based on the state compression range and used for performing state compression processing. Target state information may include at least one of the following: position state information, orientation state information, action state information, health value state information, skill state information, and display state information. For example, when the state compression range includes the basic operating state range and the interaction state range, the target state information may include the target virtual object's position, orientation, action state, and skill state.
[0109] In practical applications, there are multiple ways to determine the target compression strategy for a target virtual object based on the first compression index and the second compression index. The specific method chosen depends on the actual situation, and this specification does not impose any limitations on this approach. One possible implementation of this specification is through a strategy mapping method. Specifically, the correspondence between the first compression index, the second compression index, and candidate compression strategies can be pre-configured. After obtaining the first and second compression indices, they are matched against this correspondence, and the matched candidate compression strategy is determined as the target compression strategy. For example, if the first compression index indicates a high semantic importance of the target virtual object, and the second compression index indicates a high degree of state change of the virtual object within the target area, a target compression strategy with a larger state compression range can be determined. Another possible implementation of this specification is also through index fusion. Specifically, the compression decision score of the target virtual object can be calculated based on the semantic importance score corresponding to the first compression index and the regional change score corresponding to the second compression index, and the target compression strategy is determined based on the compression decision score. For example, the semantic importance score and the regional change score can be weighted to obtain the compression decision score, and the corresponding state compression range and state compression method can be determined based on the score range in which the compression decision score is located.
[0110] Furthermore, there are multiple ways to extract target state information from object information based on the state compression range. The specific method chosen depends on the actual situation, and this specification does not impose any limitations on the embodiments. One possible implementation in this specification is through state item matching. Specifically, the type of state item to be extracted can be determined based on the state compression range, and state data corresponding to the state item type can be read from the object information to obtain the target state information. For example, when the state compression range indicates the extraction of the basic operating state range, the position, orientation, and action state of the target virtual object can be extracted from the object information as the target state information. Another possible implementation in this specification is through field identifier extraction. Specifically, field identifiers can be configured for different state data in the object information, and the data of the corresponding fields can be extracted from the object information based on the set of field identifiers corresponding to the state compression range to obtain the target state information. For example, the position data, orientation data, and health data of the target virtual object can be extracted from the object information based on field identifiers such as "position field," "orientation field," and "health value field."
[0111] Furthermore, based on the state compression method, there are various ways to compress target state information, and the specific method selected depends on the actual situation. This specification does not impose any limitations on these methods in its embodiments. One possible implementation of this specification is through encoding compression. Specifically, the state data in the target state information can be encoded according to the state compression method to obtain compressed state data. For example, differential encoding can be used for the position change of the target virtual object, state identifier encoding can be used for the action state, and incremental encoding can be used for the change in health points to obtain the compressed state information of the target virtual object. Another possible implementation of this specification is also through quantization compression. Specifically, continuous state data in the target state information can be quantized according to the quantization precision indicated by the state compression method to obtain compressed state data. For example, the position coordinates and orientation angle of the target virtual object can be quantized so that the position coordinates and orientation angle are represented with fewer data bits. Yet another possible implementation of this specification is also through associated object group compression. Specifically, when a target virtual object has a relationship with other virtual objects, the target virtual object and other virtual objects can be identified as a group of associated objects. Based on the state changes of each virtual object in the group, the group-level shared increment and the individual offset of each virtual object are extracted. State compression information is then generated based on the group-level shared increment and the individual offset. The group of associated objects can be a collection of multiple virtual objects with the same or similar state change patterns. The group of associated objects can include at least one of the following: a group of moving objects in formation, a group of objects moving together, a group of objects moving within the same faction, a group of objects with the same interaction event, and a group of objects with the same state change trend. For example, when multiple non-player characters are moving in formation in the same direction, these multiple non-player characters can be identified as a group of associated objects.
[0112] For example, in a multiplayer online activity scenario, the server can determine the target compression strategy corresponding to the target virtual object based on a first compression index and a second compression index. If the first compression index indicates a high semantic importance of the target virtual object, and the second compression index indicates a high degree of state change of virtual objects within the target area, then the target compression strategy can indicate a large state compression range and instruct the use of incremental compression and encoding compression methods to compress the target state information. Subsequently, the server can extract the position, orientation, action state, health points, and skill state from the object information based on this state compression range to obtain the target state information, and compress the target state information based on the state compression method indicated by the target compression strategy.
[0113] By applying the solutions of the embodiments in this specification, the state compression process can be further refined from determining the compression basis to determining the compression range and compression method, so that the state compression process of the target virtual object can simultaneously adapt to the semantic importance of the target virtual object and the degree of state change of the virtual objects in the target area.
[0114] In one optional embodiment of this specification, before performing state compression on the target virtual object based on the first compression metric and the second compression metric, the following steps may be included: Obtain current network status information; Based on the first compression metric and the second compression metric, state compression is performed on the target virtual object, including: Based on the current network status information, the first compression index, and the second compression index, the target virtual object is state compressed.
[0115] It should be noted that the current network status information refers to the network status information related to the transmission of state compression information during the state compression of the target virtual object. The current network status information may include at least one of the following: currently available bandwidth, network latency, data packet loss rate, transmission queue length, and target communication link load. For example, when the server needs to synchronize the state information of the target virtual object with the target client, the current network status information may include the currently available bandwidth and network latency between the server and the target client.
[0116] State compression of a target virtual object, based on current network state information, a first compression metric, and a second compression metric, refers to adjusting the state compression process by considering current network transmission conditions after determining the semantic importance of the target virtual object and the degree of state change of virtual objects within the target area. State compression processing may include at least one of the following: adjusting the state compression range, adjusting the state compression method, adjusting the state compression precision, filtering state information to be compressed, and adjusting the state update frequency. For example, when the available bandwidth indicated by the current network state information is low, the first and second compression metrics can be combined to prioritize the compression of state data with higher semantic importance or higher degree of regional state change.
[0117] In practical applications, there are various ways to obtain current network status information, and the specific method should be selected according to the actual situation. This specification does not impose any limitations on these methods in the embodiments. One possible implementation of this specification is through link detection. Specifically, network status detection can be performed on the target communication link before state compression to obtain current network status information. For example, the server can determine the current available bandwidth, network latency, and data packet loss rate based on the transmission rate, round-trip delay, or packet loss rate of the target communication link, and use this information as the current network status information. Another possible implementation of this specification is through historical transmission statistics. Specifically, the number of state synchronization information sent, acknowledgment response time, retransmission count, or sending queue length within a preset historical time period can be statistically analyzed, and the current network status information can be determined based on the statistical results. For example, the server can estimate the current available bandwidth and the load of the target communication link based on the average transmission rate of state synchronization information sent in the most recent synchronization cycles and the backlog of the sending queue.
[0118] Furthermore, based on the current network status information, the first compression index, and the second compression index, there are multiple ways to compress the state of the target virtual object. The specific method chosen depends on the actual situation, and this specification does not impose any limitations on this approach. One possible implementation of this specification is through a compression strategy adjustment method. Specifically, a basic compression strategy for the target virtual object can be determined first based on the first and second compression indices, and then adjusted according to the current network status information to obtain the actual state compression strategy used for the target virtual object. For example, when both the first and second compression indices are high, the basic compression strategy can indicate a higher state retention range and higher compression fidelity; if the current network status information indicates low available bandwidth, the compression accuracy of some displayed state items can be reduced while maintaining key state items. Another possible implementation of this specification is also through a state data filtering method. Specifically, the state data retention conditions for the target virtual object can be determined based on the first compression index, the second compression index, and the current network status information. Based on these state data retention conditions, the state data that needs to be compressed is determined from the object information of the target virtual object, and then the determined state data is compressed. For example, when the current network status information indicates that network transmission resources are limited, priority can be given to compressing status data such as position, orientation, and action status that are related to the running logic of the target virtual object, and reducing the amount of display-related status data participating in compression during the current synchronization cycle.
[0119] For example, in a multi-user online activity scenario, the server can obtain the current available bandwidth and network latency between the server and the target client before compressing the state of the target virtual object. When the first compression metric of the target virtual object indicates that the semantic importance of the target virtual object is high, and the second compression metric indicates that the state change of the virtual objects in the target area is high, the server can compress more state data of the target virtual object if the available bandwidth is sufficient; if the available bandwidth is low, the server can combine the first and second compression metrics to filter the state data of the target virtual object and then compress the filtered state data.
[0120] By applying the solutions in the embodiments of this specification, the state compression processing can not only adapt to the semantic importance of the target virtual object and the degree of state change within the target area, but also adapt to the current network transmission conditions, reducing the situation where a fixed compression processing method is still used when the network state changes, and improving the adaptability between state compression processing and the current network state.
[0121] In one optional embodiment of this specification, the state compression of the target virtual object based on the current network state information, the first compression index, and the second compression index may include the following steps: If the current network status information meets the conditions for compressed network, the target virtual object is compressed based on the first compression index and the second compression index.
[0122] It should be noted that compressed network conditions refer to the network conditions used to determine whether the target virtual object needs to be compressed according to the compression processing logic. Compressed network conditions can include at least one of the following: available bandwidth is less than a bandwidth threshold, network latency is greater than a latency threshold, data packet loss rate is greater than a packet loss rate threshold, and transmission queue length is greater than a queue length threshold. For example, if the current available bandwidth between the server and the target client is less than a preset bandwidth threshold, it can be determined that the current network state information meets the compressed network conditions.
[0123] In practical applications, there are multiple ways to determine whether the current network status information meets the conditions for network compression. The specific method chosen depends on the actual situation, and this specification does not impose any limitations on this approach. One possible implementation in this specification is through a threshold comparison method. Specifically, the currently available bandwidth, network latency, data packet loss rate, or transmission queue length in the current network status information can be compared with corresponding preset thresholds. If the comparison result satisfies the compression triggering rules, the current network status information is determined to meet the conditions for network compression. For example, when the currently available bandwidth is less than a preset bandwidth threshold, or the network latency is greater than a preset latency threshold, the current network status information can be determined to meet the conditions for network compression. Another possible implementation in this specification is also through a network status level determination method. Specifically, the current network status level can be determined based on the current network status information, and it can be determined whether the current network status level belongs to the network status level that requires state compression. For example, the current network status level can be determined as normal, congested, or abnormal based on the current available bandwidth, network latency, and data packet loss rate. If the current network status level is congested or abnormal, the current network status information can be determined to meet the conditions for network compression.
[0124] Furthermore, given that the current network state information meets the conditions for compressed network operation, there are multiple ways to compress the state of the target virtual object based on the first compression index and the second compression index. The specific method chosen depends on the actual situation, and this specification does not impose any limitations on this approach. One possible implementation of this specification is through a compression strategy matching method. Specifically, when the current network state information meets the conditions for compressed network operation, the state compression strategy corresponding to the target virtual object can be determined based on the first compression index and the second compression index, and the target virtual object can be compressed according to the state compression strategy. For example, when both the first and second compression indices are high, a compression strategy that retains more state items can be adopted; when both the first and second compression indices are low, a compression strategy that retains fewer state items or reduces the precision of state representation can be adopted. Another possible implementation of this specification is also through a compression level determination method. Specifically, the compression level of the target virtual object can be determined based on the first and second compression indices, and the target virtual object can be compressed according to the compression range, compression precision, or compression method corresponding to the compression level. For example, when the first compression metric indicates that the semantic importance of the target virtual object is high, and the second compression metric indicates that the state change of the regional virtual object within the target area is high, a lower compression intensity or a higher retention level can be determined; when the first compression metric indicates that the semantic importance of the target virtual object is low, and the second compression metric indicates that the state change of the regional virtual object within the target area is low, a higher compression intensity or a lower retention level can be determined.
[0125] For example, in a multiplayer online activity scenario, the server can obtain the current available bandwidth and network latency between the server and the target client, and determine whether the current available bandwidth is less than a preset bandwidth threshold. If the current available bandwidth is less than the preset bandwidth threshold, the server can determine that the current network status information meets the network compression conditions, and further compress the status data such as the position, orientation, action status, and health of the target virtual object according to the first compression index and the second compression index of the target virtual object.
[0126] The solution implemented in this specification can match the state compression process with the current network state. When network transmission conditions require compression, the compression method can be further determined based on the semantic importance of the target virtual object and the degree of state change of the virtual objects in the target area. This reduces the situation where the compression basis of different virtual object state data is mismatched due to the use of uniform compression processing in network-restricted scenarios.
[0127] In one optional embodiment of this specification, the state compression of the target virtual object based on the current network state information, the first compression index, and the second compression index may include the following steps: If the current network status information does not meet the conditions for compressed network, the state information to be compressed is selected from the target state information of the target virtual object based on the first compression index and the second compression index. Compress the status information to be compressed.
[0128] It should be noted that the state information to be compressed refers to the state information selected from the target state information that needs to be compressed during the current state compression process. The state information to be compressed may include at least one of the following: basic operational state information, interaction-related state information, visual performance state information, physical effect state information, and state change increment information. For example, when the target virtual object is in a combat interaction state, the state information to be compressed may include the target virtual object's position, orientation, action state, and skill release state.
[0129] "Not meeting compressed network conditions" means that the current network status information does not meet the preset compressed network conditions. These conditions can include at least one of the following: available bandwidth is not less than a bandwidth threshold, network latency is not greater than a latency threshold, packet loss rate is not greater than a packet loss rate threshold, and transmission queue length is not greater than a queue length threshold. For example, if the available bandwidth is not less than a preset bandwidth threshold, it can be determined that the current network status information does not meet the compressed network conditions.
[0130] Filtering refers to the process of determining the state information to be compressed from the target state information according to a first compression metric and a second compression metric. Filtering can include at least one of the following: filtering by semantic importance, filtering by the degree of change in regional state, filtering by state item type, filtering by the magnitude of state change, and filtering by state synchronization requirements. For example, when the first compression metric indicates that the target virtual object has a high semantic importance, the position, orientation, and action state related to the object's operational logic can be prioritized as the state information to be compressed.
[0131] In practical applications, when the current network status information does not meet the conditions for network compression, there are multiple ways to filter out the state information to be compressed from the target state information of the target virtual object based on the first compression index and the second compression index. The specific method should be selected according to the actual situation, and this specification does not limit this approach. One possible implementation of this specification is through a state item priority filtering method. Specifically, the semantic importance of the target virtual object can be determined based on the first compression index, and the degree of state change of the virtual objects in the target area can be determined based on the second compression index. Then, the priority of each state item in the target state information is determined based on the semantic importance and the degree of state change, and the state items whose priority meets the preset priority conditions are identified as the state information to be compressed. For example, when both the first and second compression indices are high, the position, orientation, action state, health points, and skill state of the target virtual object can all be identified as the state information to be compressed; when both the first and second compression indices are low, the position and orientation can be identified as the state information to be compressed. Another possible implementation of this specification is also through a compression range matching method. Specifically, the correspondence between the first compression index, the second compression index, and the compression range can be pre-configured. When the current network status information does not meet the conditions for compression, the corresponding compression range is queried based on the first and second compression indexes, and the status information to be compressed is filtered from the target status information based on this compression range. For example, the compression range can indicate retaining basic status information, retaining basic status information and interactive status information, or retaining any one of basic status information, interactive status information, and display status information, thereby determining the status information to be compressed.
[0132] Furthermore, there are various methods for compressing the state information to be compressed, and the specific method chosen depends on the actual situation. This specification does not impose any limitations on these methods in its embodiments. One possible implementation of this specification is through encoding compression. Specifically, the state items in the state information to be compressed can be encoded to obtain the corresponding compressed state information. For example, differential encoding can be used for the position coordinates of the target virtual object, identification encoding can be used for the action state, and incremental encoding can be used for the change in health points, thereby reducing the amount of data corresponding to the state information to be compressed. Another possible implementation of this specification is through quantization compression. Specifically, continuous state data in the state information to be compressed can be quantized according to a preset quantization precision, and the quantized state data can be used as the compression result. For example, the position coordinates or orientation angle of the target virtual object can be quantized to represent the state changes of the target virtual object with fewer data bits.
[0133] For example, in a multiplayer online activity scenario, the server can obtain the current network status information and determine that the current network status information does not meet the conditions for network compression. Subsequently, the server can filter out the state information to be compressed from the target virtual object's position, orientation, action status, health points, skill status, and display status according to the first and second compression indicators of the target virtual object. For example, when the target virtual object is a player character participating in combat and the state of the target area changes significantly, the position, orientation, action status, health points, and skill status can be filtered as the state information to be compressed, and the above-mentioned state information to be compressed can be encoded and compressed or quantized and compressed.
[0134] By applying the solutions of the embodiments in this specification, the state compression process can be further refined to the specific state items in the target state information, reducing the need for uniform processing of the target state information, and enabling the determination process of the state information to be compressed to simultaneously refer to the semantic importance of the target virtual object and the degree of state change within the target region.
[0135] See Figure 2 , Figure 2 This specification illustrates a flowchart of a target virtual object state synchronization method according to an embodiment, which specifically includes the following steps: Step 202: Obtain the state compression information of the target virtual object, wherein the state compression information is obtained by compressing the target virtual object state compression method.
[0136] Step 204: Synchronize the state compression information.
[0137] It should be noted that state compression information refers to the information obtained after compressing the state of a target virtual object. State compression information may include at least one of the following: compressed position state information, compressed orientation state information, compressed action state information, compressed health state information, and compressed skill state information. For example, when the target virtual object is a player character, the state compression information may include encoded changes in position, action state indicators, and changes in health.
[0138] Synchronization refers to the process of providing compressed state information to one or more endpoints that need to update the state of a target virtual object. Synchronization can include at least one of the following: sending compressed state information to the target client, forwarding compressed state information to edge nodes, writing compressed state information to a state synchronization queue, and broadcasting compressed state information to multiple clients. For example, in a multi-user online activity scenario, the server can send compressed state information of the target virtual object to the target client, enabling the target client to update the display state of the target virtual object in the virtual scene based on the compressed state information.
[0139] In practical applications, there are multiple ways to obtain the state compression information of a target virtual object, and the specific method chosen depends on the actual situation. This specification does not impose any limitations on this method. In one possible implementation, the aforementioned target virtual object state compression method can be invoked to process the object information of the target virtual object and obtain the state compression information. For example, the server can determine a target compression strategy based on the first and second compression indicators of the target virtual object, extract target state information from the object information according to the target compression strategy, and then compress the target state information to obtain the state compression information of the target virtual object. In another possible implementation, this can also be achieved through a cache read method. Specifically, the server can pre-generate the state compression information of the target virtual object within the target synchronization cycle and store the state compression information in a state synchronization cache; during state synchronization, the server can read the state compression information corresponding to the target virtual object from the state synchronization cache.
[0140] It should be noted that the method for generating the state compression information of the target virtual object is based on the same concept as the technical solution of the target virtual object state compression method described above. For details not described in step 202, please refer to the description of the technical solution of the target virtual object state compression method described above.
[0141] Furthermore, there are multiple ways to synchronize state compression information, and the specific method chosen depends on the actual situation. This specification does not impose any limitations on these methods in the embodiments. One possible implementation method is through sending to the target client. Specifically, the server can encapsulate the state compression information into a state synchronization message based on the synchronization requirements of the target client and send the message to the target client. For example, the state synchronization message can carry the object identifier of the target virtual object, state compression information, and a synchronization period identifier. After receiving the state synchronization message, the target client can determine the target virtual object to be updated based on the object identifier and update the state of the target virtual object based on the state compression information. Another possible implementation method is through forwarding via a synchronization queue. Specifically, the server can write the state compression information into a state synchronization queue, and the sending module, gateway node, or edge node corresponding to the state synchronization queue will synchronize the state compression information to the target client. For example, in a multi-user online activity scenario, the server can write the state compression information of multiple target virtual objects into the same state synchronization queue, and the sending module will send the corresponding state compression information to the target client according to the synchronization range of the target client.
[0142] By applying the solutions of the embodiments in this specification, the aforementioned state compression results can be applied to the virtual object state synchronization process, so that the state information transmitted during the synchronization process is adapted to the semantic importance of the target virtual object and the degree of state change of the virtual objects in the target area, thereby reducing the pressure of the amount of transmitted data caused by directly synchronizing uncompressed state information.
[0143] It should be noted that the target virtual object state compression method and target virtual object state synchronization method provided in this manual can be applied to multiple industries or scenarios such as virtual reality processing software, home entertainment product software, digital cultural product production software, digital cultural creative software, digital cultural creative design, education, news, cultural content industry software, digital publishing software, digital music development and production, and digital mobile multimedia development and production. In some cases, they can also be applied to fields such as digital cultural product production engine software and development systems, digital cultural software, digital film and television development and production, and digital performance development and production.
[0144] See Figure 3 , Figure 3 This specification illustrates an architecture diagram of a target virtual object state compression system according to an embodiment. This system can be used to execute the aforementioned target virtual object state compression method and can synchronize the state compression information after obtaining it. Figure 3 As shown, the system may include an object information acquisition layer, a compression index determination layer, a strategy decision layer, a state compression execution layer, and a synchronization control layer. The object information acquisition layer may include object information of the target virtual object, used to obtain the basic data required for subsequent state compression. The compression index determination layer may include a first compression index determination module and a second compression index determination module. The first compression index determination module determines a first compression index based on the object information of the target virtual object, and the second compression index determination module determines a second compression index based on the state changes within the target area where the target virtual object is located. The strategy decision layer may include a target compression strategy determination module, used to determine the target compression strategy corresponding to the target virtual object based on the first and second compression indices. The state compression execution layer may include a target state information compression module and an incremental state compression module. The target state information compression module compresses the target state information of the target virtual object based on the target compression strategy, and the incremental state compression module incrementally compresses the state changes of the target virtual object. The synchronization control layer may include a network state compression adjustment module and a state synchronization information sending module. The network state compression adjustment module adjusts the state compression processing in conjunction with the current network state information, and the state synchronization information sending module uses the state compression information for state synchronization. Through the cooperation of the above-mentioned levels and modules, the state compression and state synchronization of the target virtual object can be achieved.
[0145] See Figure 4 , Figure 4 The diagram illustrates a flowchart of a target virtual object state compression and synchronization method according to an embodiment of this specification. This flowchart can serve as a specific application example of the aforementioned target virtual object state compression method and target virtual object state synchronization method. It is used in multi-user online activity scenarios to compress the state of the target virtual object based on the semantic importance of the target virtual object, the degree of state change within the target area, and the current network state information, and to synchronize the compressed state information.
[0146] First, the object information of the target virtual object can be obtained and the target virtual object can be identified. The target virtual object can be a virtual object that is active in the current frame or current synchronization period and requires state compression or state synchronization. Object information can include at least one of the following: object type, faction relationship, interaction state, location information, action state, health points, and skill state. For example, in a multiplayer online activity scenario, object types can include player characters, non-player characters, and environmental objects; faction relationships can include enemy, friendly, and neutral; and interaction states can include combat and non-combat states.
[0147] After identifying the target virtual object, semantic analysis can be performed on the object information to determine the first compression index. Specifically, active virtual objects in the current frame can be semantically categorized, and the semantic importance of the target virtual object can be determined based on multi-dimensional semantic information such as object type, faction relationship, interaction state, and distance from the player's focus. This allows for the assignment of a corresponding first compression index to the target virtual object. For example, the first compression index can include high semantic importance, medium semantic importance, and low semantic importance; enemy player characters in combat and close to the player's focus can correspond to a higher first compression index, while environmental objects far from the player's focus and not involved in interaction can correspond to a lower first compression index.
[0148] Furthermore, the state change information of virtual objects within the target area can be determined, and a second compression index can be determined based on this state change information. Specifically, the virtual world corresponding to the virtual scene can be spatially partitioned according to a predefined grid to obtain multiple candidate areas. Based on the position of the target virtual object in the virtual scene, the target area can be determined from the multiple candidate areas. Subsequently, the frequency and magnitude of state changes of virtual objects within the target area in multiple state monitoring windows can be statistically analyzed to calculate the state change rate or regional state entropy value of the target area, and the second compression index can be determined based on the state change rate or regional state entropy value. For example, when multiple virtual objects in a battlefield area frequently move, release skills, or experience changes in health, the area can be identified as a high-entropy area; when virtual objects in a static town area experience fewer state changes, the area can be identified as a low-entropy area.
[0149] After determining the first compression metric and the second compression metric, a target compression strategy can be determined based on these two metrics. Specifically, the semantic priority of the target virtual object and the spatial entropy value of the target region can be integrated, and a state compression strategy can be dynamically selected for the target virtual object through a preset strategy mapping table. For example, when both the first and second compression metrics are high, a layered compression method can be used, dividing the target state information into a first state layer and a second state layer for compression; when the first compression metric is high and the second compression metric is low, reference state frame compression and lightweight incremental compression can be used; when both the first and second compression metrics are at an intermediate level, incremental compression and quantization compression can be used; when both the first and second compression metrics are low, lossy quantization compression and low-frequency state synchronization can be used. For combinations of metrics not listed, a corresponding state compression strategy can be configured according to the preset strategy mapping table; this specification does not limit this. Thus, virtual objects with different semantic importance and different degrees of regional change can be processed using different state compression methods.
[0150] For example, in multiplayer online activity scenarios, the semantic priority of the target virtual object and the spatial entropy value of the target region can be integrated, and an encoding strategy can be dynamically selected for the target virtual object through a preset strategy mapping table. For instance, in the case of high priority and high entropy region, multi-level progressive encoding can be used to decompose the state data into a base layer and an enhancement layer; in the case of high priority and low entropy region, reference frame synchronization and lightweight incremental encoding can be used; in the case of medium priority, standard incremental encoding and quantization encoding can be used; and in the case of low priority, lossy quantization and low-frequency state synchronization can be used. The first state layer can correspond to the base layer, used to maintain the core states of the activity's playability; the second state layer can correspond to the enhancement layer, used to improve the quality of visual presentation. The first state layer can include state data required to maintain the activity's playability, such as position, orientation, action state, and health points; the second state layer can include state data used to improve the quality of visual presentation, such as skeletal details, facial expressions, and physical side effects. The first state layer can be compressed using a high-fidelity encoding method or a near-lossless encoding method to preserve the basic operating state of the target virtual object; the second state layer can be compressed using a scalable lossy encoding method to support adjusting the amount of data related to the visual representation state data layer by layer when the network state changes.
[0151] Before obtaining state compression information or state synchronization, current network state information can be acquired to determine whether it meets the conditions for network compression. This current network state information can include at least one of the following: available bandwidth, network latency, data packet loss rate, and transmission queue length. If the current network state information indicates sufficient bandwidth, the target state information can be compressed and the corresponding state compression information synchronized. If the current network state information indicates limited bandwidth, state information to be compressed can be selected based on hierarchical priority and then compressed. For example, in a hierarchical compression scenario, the second state layer of the target virtual object using hierarchical compression can be discarded first. When bandwidth is further limited, the first state layer of low semantic importance virtual objects is discarded, while the first state layers of high and medium semantic importance virtual objects are prioritized for preservation. Furthermore, the first and second state layers can be encoded, encapsulated, and transmitted separately, allowing for independent retention, synchronization, or layer dropping processes for different state layers when the current network state information changes. This reduces the amount of data transmitted when bandwidth is limited, while ensuring priority synchronization of the basic state information of higher semantic importance virtual objects.
[0152] After generating state compression information, this information can be synchronized. Specifically, the state compression information can be encapsulated into state synchronization information and sent to the target client, enabling the target client to update the state of the target virtual object in the virtual scene based on the state compression information. Figure 4 The process shown can sequentially complete semantic importance classification, spatial partition state change rate evaluation, dual classification adaptive compression strategy selection, multi-level progressive compression, and bandwidth-constrained hierarchical priority reduction processing within the current frame or current synchronization period, thereby adapting the state compression and state synchronization process of the target virtual object to the semantics, regional dynamic changes, and network transmission conditions in the virtual scene.
[0153] Corresponding to the above method embodiments, this specification also provides embodiments of a target virtual object state compression device. Figure 5 A schematic diagram of a target virtual object state compression device according to an embodiment of this specification is shown. Figure 5 As shown, the device includes: The first acquisition module 502 is configured to acquire object information of the target virtual object; The first analysis module 504 is configured to perform semantic analysis on object information and determine a first compression index of the target virtual object, wherein the first compression index is used to describe the semantic importance of the target virtual object. The second analysis module 506 is configured to determine a second compression index of the target virtual object based on the target area where the target virtual object is located in the virtual scene. The second compression index is used to describe the degree of state change of the regional virtual object within the target area. Compression module 508 is configured to compress the state of the target virtual object based on a first compression index and a second compression index.
[0154] Optionally, the first analysis module 504 is further configured to parse object information to obtain semantic association information of the target virtual object, wherein the semantic association information includes at least one of object type and object interaction information; and to determine a first compression index of the target virtual object based on the semantic association information.
[0155] Optionally, the second analysis module 506 is further configured to determine the state change information of the regional virtual object based on the object state information of the regional virtual object in multiple state monitoring windows; and to determine the second compression index of the target virtual object based on the state change information.
[0156] Optionally, the compression module 508 is further configured to determine a target compression strategy for the target virtual object based on a first compression index and a second compression index, wherein the target compression strategy is used to constrain the state compression range and state compression method of the target virtual object; extract target state information from the object information based on the state compression range; and compress the target state information based on the state compression method.
[0157] Optionally, the device further includes a third acquisition module configured to acquire current network status information; Compression module 508 is further configured to compress the state of the target virtual object based on the current network status information, the first compression index, and the second compression index.
[0158] Optionally, the compression module 508 is further configured to compress the state of the target virtual object based on the first compression index and the second compression index, provided that the current network state information meets the conditions for compressing the network.
[0159] Optionally, the compression module 508 is further configured to, when the current network status information does not meet the conditions for compressing the network, select the status information to be compressed from the target status information of the target virtual object based on the first compression index and the second compression index; and compress the status information to be compressed.
[0160] Optionally, the device further includes a region determination module, configured to divide the virtual scene into regions to obtain multiple candidate regions; and to determine the target region from the multiple candidate regions based on the position of the target virtual object in the virtual scene.
[0161] The above is a schematic scheme of a target virtual object state compression device according to this embodiment. It should be noted that the technical solution of this target virtual object state compression device and the technical solution of the target virtual object state compression method described above belong to the same concept. For details not described in detail in the technical solution of the target virtual object state compression device, please refer to the description of the technical solution of the target virtual object state compression method described above.
[0162] Corresponding to the above method embodiments, this specification also provides embodiments of a target virtual object state synchronization device. Figure 6 A schematic diagram of a target virtual object state synchronization device according to an embodiment of this specification is shown. Figure 6 As shown, the device includes: The second acquisition module 602 is configured to acquire the state compression information of the target virtual object, wherein the state compression information is obtained by compression based on the above-mentioned target virtual object state compression method; Synchronization module 604 is configured to synchronize state compression information.
[0163] The above is a schematic scheme of a target virtual object state synchronization device according to this embodiment. It should be noted that the technical solution of this target virtual object state synchronization device and the technical solution of the target virtual object state synchronization method described above belong to the same concept. For details not described in detail in the technical solution of the target virtual object state synchronization device, please refer to the description of the technical solution of the target virtual object state synchronization method described above.
[0164] Figure 7 A structural block diagram of a computing device according to one embodiment of this specification is shown. The components of the computing device 700 include, but are not limited to, a memory 710 and a processor 720. The processor 720 is connected to the memory 710 via a bus 730, and a database 750 is used to store data.
[0165] The computing device 700 also includes an access device 740, which enables the computing device 700 to communicate via one or more networks 760. Examples of these networks include Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), 5G communication networks, or combinations of communication networks such as the Internet. The access device 740 may include one or more of any type of wired or wireless network interface (e.g., Network Interface Card (NIC)), such as an IEEE 802.11 Wireless Local Area Networks (WLAN) wireless interface, a Wi-MAX (World Interoperability for Microwave Access) interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.
[0166] In one embodiment of this specification, the above-described components of the computing device 700 and Figure 7 Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 7 The block diagram of the computing device shown is for illustrative purposes only and is not intended to limit the scope of this specification. Those skilled in the art can add or replace other components as needed.
[0167] The computing device 700 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones, in-vehicle computers, POS machines, game consoles, etc.), wearable computing devices (e.g., smartwatches, smart glasses, etc.), smart home appliances, multimedia playback devices, smart voice interaction devices, or other types of mobile devices, or stationary computing devices such as desktop computers or personal computers (PCs). The computing device 700 can also be a mobile or stationary server. The server can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms.
[0168] The processor 720 is used to execute computer programs / instructions, which, when executed by the processor, implement the steps of the target virtual object state compression method and the target virtual object state synchronization method described above.
[0169] The above is an illustrative scheme of a computing device according to this embodiment. It should be noted that the technical solution of this computing device belongs to the same concept as the technical solutions of the target virtual object state compression method and the target virtual object state synchronization method described above. For details not described in detail in the technical solution of the computing device, please refer to the description of the technical solutions of the target virtual object state compression method and the target virtual object state synchronization method described above.
[0170] An embodiment of this specification also provides a computer-readable storage medium storing a computer program / instructions that, when executed by a processor, implement the steps of the target virtual object state compression method and the target virtual object state synchronization method described above.
[0171] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium belongs to the same concept as the technical solutions of the target virtual object state compression method and the target virtual object state synchronization method described above. Details not described in detail in the technical solution of the storage medium can be found in the descriptions of the technical solutions of the target virtual object state compression method and the target virtual object state synchronization method described above.
[0172] An embodiment of this specification also provides a computer program product, including a computer program / instruction that, when executed by a processor, implements the steps of the above-described target virtual object state compression method and target virtual object state synchronization method.
[0173] The above is an illustrative scheme of a computer program product according to this embodiment. It should be noted that the technical solution of this computer program product belongs to the same concept as the technical solutions of the target virtual object state compression method and the target virtual object state synchronization method described above. For details not described in detail in the technical solution of the computer program product, please refer to the description of the technical solutions of the target virtual object state compression method and the target virtual object state synchronization method described above.
[0174] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.
[0175] Computer instructions include computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. Computer-readable media can include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in computer-readable media can be appropriately added or removed according to the requirements of patent practice. For example, in some regions, according to patent practice, computer-readable media do not include electrical carrier signals and telecommunication signals.
[0176] An embodiment of this specification also provides a chip that stores a computer program, which, when executed by the chip, implements the steps of the target virtual object state compression method and the target virtual object state synchronization method.
[0177] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments in this specification are not limited to the described order of actions, because according to the embodiments in this specification, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in this specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to the embodiments in this specification.
[0178] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.
[0179] The preferred embodiments disclosed above are merely illustrative of this specification. The optional embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the embodiments described herein. These embodiments are selected and specifically described in this specification to better explain the principles and practical applications of the embodiments, thereby enabling those skilled in the art to better understand and utilize this specification. This specification is limited only by the claims and their full scope and equivalents.
Claims
1. A method for compressing the state of a target virtual object, characterized in that, include: Obtain object information of the target virtual object; Semantic analysis is performed on the object information to determine a first compression index of the target virtual object, wherein the first compression index is used to describe the semantic importance of the target virtual object; Based on the target area where the target virtual object is located in the virtual scene, a second compression index of the target virtual object is determined, wherein the second compression index is used to describe the degree of state change of the regional virtual object within the target area; Based on the first compression index and the second compression index, the target virtual object is subjected to state compression.
2. The method according to claim 1, characterized in that, The step of performing semantic analysis on the object information to determine the first compression index of the target virtual object includes: Parse the object information to obtain the semantic association information of the target virtual object, wherein the semantic association information includes at least one of object type and object interaction information; Based on the semantic association information, the first compression index of the target virtual object is determined.
3. The method according to claim 1, characterized in that, The step of determining the second compression index of the target virtual object based on the target region where the target virtual object is located in the virtual scene includes: Based on the object status information of the virtual object in the region within multiple status monitoring windows, the status change information of the virtual object in the region is determined; Based on the state change information, the second compression index of the target virtual object is determined.
4. The method according to claim 1, characterized in that, The step of compressing the state of the target virtual object based on the first compression index and the second compression index includes: Based on the first compression index and the second compression index, a target compression strategy for the target virtual object is determined, wherein the target compression strategy is used to constrain the state compression range and state compression method of the target virtual object; Based on the state compression range, extract the target state information from the object information; The target state information is compressed based on the aforementioned state compression method.
5. The method according to any one of claims 1 to 4, characterized in that, Before performing state compression on the target virtual object based on the first compression index and the second compression index, the method further includes: Obtain current network status information; The step of compressing the state of the target virtual object based on the first compression index and the second compression index includes: Based on the current network status information, the first compression index, and the second compression index, the target virtual object is subjected to state compression.
6. The method according to claim 5, characterized in that, The step of compressing the state of the target virtual object based on the current network state information, the first compression index, and the second compression index includes: If the current network status information meets the conditions for compressed network, the target virtual object is subjected to state compression based on the first compression index and the second compression index.
7. The method according to claim 5, characterized in that, The step of compressing the state of the target virtual object based on the current network state information, the first compression index, and the second compression index includes: If the current network status information does not meet the conditions for compressed network, the state information to be compressed is filtered from the target status information of the target virtual object based on the first compression index and the second compression index. The state information to be compressed is compressed.
8. The method according to any one of claims 1 to 4, characterized in that, Before determining the second compression index of the target virtual object based on the target region where the target virtual object is located in the virtual scene, the method further includes: The virtual scene is divided into regions to obtain multiple candidate regions; The target region is determined from the plurality of candidate regions based on the position of the target virtual object in the virtual scene.
9. A method for synchronizing the state of a target virtual object, characterized in that, include: Obtain the state compression information of the target virtual object, wherein the state compression information is obtained by compression based on the method described in any one of claims 1 to 8; The state compression information is synchronized.
10. A computing device, characterized in that, include: Memory and processor; The memory is used to store computer programs / instructions, and the processor is used to execute the computer programs / instructions, which, when executed by the processor, implement the steps of the method according to any one of claims 1 to 9.
11. A computer-readable storage medium, characterized in that, It stores a computer program / instructions that, when executed by a processor, implement the steps of the method according to any one of claims 1 to 9.
12. A computer program product, characterized in that, Includes a computer program / instructions that, when executed by a processor, implement the steps of the method according to any one of claims 1 to 9.