Skill indicator display method and apparatus, and device, medium and program product
By switching the display mechanism of the skill indicator under different motion states of virtual objects, the problems of insufficient indicator accuracy and smoothness caused by different refresh rates are solved, and high-precision and smooth display of skill indicators are achieved in multiplayer online tactical competitive games.
Patent Information
- Application Number
- PCT/CN2025/087454
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-21
- Filing Date
- 2025-04-07
- Publication Date
- 2025-11-27
AI Technical Summary
Because the refresh rates of terminal devices differ at the presentation and logic levels, the presentation and logic positions of virtual objects do not overlap, resulting in insufficient accuracy of skill indicators and affecting user experience.
When the virtual object is moving, the skill indicator is displayed based on its apparent position to ensure smoothness; when it is stationary, the skill indicator is displayed based on its logical position to improve the accuracy of the indication, by switching the display mechanism according to the virtual object's movement state.
While ensuring smooth display, the accuracy of skill indicators has been improved, and errors in indicating virtual objects during movement and stuttering issues when stationary have been reduced.
Smart Images

Figure CN2025087454_27112025_PF_FP_ABST
Abstract
Description
Display method, device, equipment, medium and program product of skill indicator
[0001] The present application claims priority to the Chinese patent application No. 202410630617.5, filed on May 21, 2024, and entitled "Display method, device, equipment, medium and program product of skill indicator", the whole content of which is incorporated herein by reference. TECHNICAL FIELD
[0002] Embodiments of the present application relate to the field of human-computer interaction technology, in particular to a display method, device, equipment, medium and program product of skill indicator. BACKGROUND
[0003] The display of the game interface contains two levels, namely the performance level and the logic level. Among them, at the performance level, different terminal devices of the same game each render the game interface in response to user operations at a first refresh frequency, and the display position of the virtual object in the game interface is the performance position; at the logic level, all terminal devices within the same game render the game interface based on data synchronized with the server at a second refresh frequency, and the display position of the virtual object in the game interface is the logic position. Since the first refresh frequency is different from the second refresh frequency, the performance position and the logic position of the virtual object at the same time are difficult to coincide.
[0004] The skill indicator is used to predict and prompt the skill release area and release range of the virtual object, and the user determines the skill release position through the skill indicator to realize the skill release of the virtual object.
[0005] In the related art, the terminal device displays the skill indicator according to the performance position of the virtual object at the performance level. However, since the performance position and the logic position of the virtual object at the same time are difficult to coincide, the skill release effect predicted by the skill indicator according to the performance position is inconsistent with the skill release effect calculated by the terminal device according to the logic position, thereby affecting the indication accuracy of the skill indicator. SUMMARY
[0006] Embodiments of the present application provide a display method, device, equipment, medium and program product of skill indicator. The technical solution is as follows:
[0007] In one aspect, the embodiments of the present application provide a display method of skill indicator, which is executed by a terminal device, and the method comprises:
[0008] Receiving a trigger operation on a target skill control, the target skill control being used to control a virtual object to release a target skill, the target skill control being a triggered skill control, and the target skill being a skill released by the virtual object when the target skill control is triggered;
[0009] In a case where the virtual object is in a moving state, display a skill indicator of the target skill based on a performance position of the virtual object, the performance position being a position adopted by a client to render the virtual object, the skill indicator being used to indicate a skill effect range after the target skill is released;
[0010] In a case where the virtual object is in a static state, display the skill indicator of the target skill based on a logical position of the virtual object, the logical position being a position of the virtual object carried by a server when performing frame synchronization with the client, and a refresh frequency of the performance position being higher than a refresh frequency of the logical position.
[0011] In another aspect, an embodiment of the present application provides a display device of a skill indicator, the device comprising:
[0012] a receiving module configured to receive a triggering operation on a target skill control, the target skill control being used to control a virtual object to release a target skill, the target skill control being a triggered skill control, and the target skill being a skill released by the virtual object when the target skill control is triggered;
[0013] a first display module configured to, in a case where the virtual object is in a moving state, display a skill indicator of the target skill based on a performance position of the virtual object, the performance position being a position adopted by a client to render the virtual object, the skill indicator being used to indicate a skill effect range after the target skill is released;
[0014] a second display module configured to, in a case where the virtual object is in a static state, display the skill indicator of the target skill based on a logical position of the virtual object, the logical position being a position of the virtual object carried by a server when performing frame synchronization with the client, and a refresh frequency of the performance position being higher than a refresh frequency of the logical position.
[0015] In another aspect, an embodiment of the present application provides a terminal device, the terminal device comprising a processor and a memory, the memory storing at least one computer instruction, the at least one computer instruction being loaded and executed by the processor to implement the display method of the skill indicator as described in the above aspect.
[0016] In another aspect, an embodiment of the present application provides a computer readable storage medium, the computer readable storage medium storing at least one computer instruction, the at least one computer instruction being loaded and executed by a processor to implement the display method of the skill indicator as described in the above aspect.
[0017] In another aspect, an embodiment of the present application provides a computer program product, which comprises computer instructions stored in a computer readable storage medium; a processor of a terminal device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions, so that the terminal device implements the display method of the skill indicator as described in the above aspect.
[0018] In the embodiment of the present application, when the virtual object is in a moving state, the skill indicator of the target skill is displayed according to the performance position of the virtual object, which can ensure the display fluency of the skill indicator during the movement of the virtual object; when the virtual object is in a stationary state, the skill indicator of the target skill is displayed according to the logical position of the virtual object, which can improve the indication accuracy of the skill indicator in the stationary state. By displaying the skill indicator in different ways according to different motion states of the virtual object, the display effect of the skill indicator can be optimized.
[0019] Moreover, since the skill indicator indication error during the movement of the virtual object is relatively difficult to detect, and the logical position of the virtual object in the stationary state remains unchanged, the lag problem caused by the low refresh frequency of the logical position disappears, therefore, the technical solution provided by the embodiment of the present application can improve the indication accuracy of the skill indicator while ensuring the display fluency. BRIEF DESCRIPTION OF DRAWINGS
[0020] FIG. 1 shows a schematic diagram of a computer system according to an example embodiment of the present application;
[0021] FIG. 2 shows a schematic diagram of an interface of a terminal device in a game;
[0022] FIG. 3 shows a schematic diagram of a skill indicator corresponding to a skill based on a virtual object position;
[0023] FIG. 4 shows a schematic diagram of a skill release path of a virtual object;
[0024] FIG. 5 shows a schematic diagram of a skill release path of a virtual object when a selected position is close to a virtual object position;
[0025] FIG. 6 shows a flowchart of a display method of a skill indicator according to an example embodiment of the present application;
[0026] FIG. 7 shows a flowchart of a display method of a skill indicator according to another example embodiment of the present application;
[0027] FIG. 8 is a schematic diagram of a correspondence between a virtual object state and a skill indicator display mechanism;
[0028] FIG. 9 is a state transition diagram of a virtual object;
[0029] FIG. 10 shows a flowchart of a time threshold determination process according to an example embodiment of the present application;
[0030] FIG. 11 shows a flowchart of a skill indicator display process based on historical moving speed according to an example embodiment of the present application;
[0031] FIG. 12 shows a flowchart of a skill indicator display process based on historical position deviation according to an example embodiment of the present application;
[0032] FIG. 13 shows a comparison diagram of skill indicators corresponding to two skill types according to an example embodiment of the present application;
[0033] FIG. 14 shows a diagram of a position relationship affecting path difference according to an example embodiment of the present application;
[0034] FIG. 15 shows a flowchart of a skill indicator display process based on deviation correction according to an example embodiment of the present application;
[0035] FIG. 16 shows a flowchart of a skill indicator display process based on deviation correction according to another example embodiment of the present application;
[0036] FIG. 17 shows a structural block diagram of a skill indicator display device according to an example embodiment of the present application;
[0037] FIG. 18 shows a structural block diagram of a terminal device according to an example embodiment of the present application. DETAILED DESCRIPTION
[0038] For the purpose of making the object, technical scheme and advantages of the present application more clear, the embodiments of the present application will be described in further detail below with reference to the drawings.
[0039] Please refer to FIG. 1, which shows a diagram of a computer system 100 according to an example embodiment of the present application. The computer system 100 is used to illustrate an implementation environment. The computer system 100 includes a first terminal device 110, a server 120 and a second terminal device 130.
[0040] The first terminal device 110 runs an application 111 supporting a virtual environment. When the first terminal device 110 runs the application 111, a user interface of the application 111 is displayed on a screen of the first terminal device 110. The application 111 can be any one of a Multiplayer Online Battle Arena (MOBA) game, a Simulation Game (SLG), a Massive Multiplayer Online Role-Playing Game (MMORPG), a First-Person Shooting game (FPS), and a Party Game. In this embodiment, the application 111 is taken as an example of a MOBA game. The first terminal device 110 is a terminal device used by a first user 112, and the first user 112 uses the first terminal device 110 to control a first virtual object in a virtual environment to perform activities. The first virtual object can be referred to as a master virtual object of the first user 112. The activities of the first virtual object include, but are not limited to, at least one of switching poses, crawling, walking, running, riding, flying, jumping, driving, picking up, shooting, attacking, and throwing. Illustratively, the first virtual object is a first virtual character, such as a simulated character or an animation character.
[0041] The second terminal device 130 runs an application 131 supporting a virtual environment. When the second terminal device 130 runs the application 131, a user interface of the application 131 is displayed on a screen of the second terminal device 130. The application 131 can be any one of a MOBA game, an SLG game, an MMORPG game, an FPS game, and a Party game. In this embodiment, the application 131 is taken as an example of a MOBA game. The second terminal device 130 is a terminal device used by a second user 132, and the second user 132 uses the second terminal device 130 to control a second virtual object in a virtual environment to perform activities. The second virtual object can be referred to as a master virtual object of the second user 132. Illustratively, the second virtual object is a second virtual character, such as a simulated character or an animation character.
[0042] Optionally, the first virtual object and the second virtual object are in the same virtual world. Optionally, the first virtual object and the second virtual object can belong to the same camp, the same team, the same organization, have a friendship relationship, or have temporary communication authority. Optionally, the first virtual object and the second virtual object can also belong to different camps, different teams, different organizations, or have an enemy relationship.
[0043] Optionally, the application programs installed on the first terminal device 110 and the second terminal device 130 are the same, or the application programs installed on the two terminal devices are the same type of application programs on different operating system platforms (Android or IOS). The first terminal device 110 can be referred to as one of a plurality of terminal devices, and the second terminal device 130 can be referred to as another one of the plurality of terminal devices. The embodiments are only exemplified by the first terminal device 110 and the second terminal device 130. The first terminal device 110 and the second terminal device 130 can be the same or different in device type, which includes at least one of a smart phone, a tablet computer, an electronic book reader, a Moving Picture Experts Group Audio Layer III (MP3) player, a Moving Picture Experts Group Audio Layer IV (MP4) player, a laptop computer, and a desktop computer.
[0044] Only two terminal devices are shown in FIG. 1, but there are a plurality of other terminal devices that can access the server 120 in different embodiments. Optionally, there is one or more terminal devices that are developer corresponding terminal devices, on which a development and editing platform of the application program supporting the virtual environment is installed. The developer can edit and update the application program on the terminal device, and transmit the updated application installation package to the server 120 through a wired or wireless network. The first terminal device 110 and the second terminal device 130 can download the application installation package from the server 120 to update the application program.
[0045] The first terminal device 110, the second terminal device 130, and other terminal devices are connected to the server 120 through a wireless network or a wired network.
[0046] The server 120 includes at least one of a server, a server cluster composed of a plurality of servers, a cloud computing platform, and a virtualization center. The server 120 is used to provide background services for the application program supporting the three-dimensional virtual environment. Optionally, the server 120 undertakes the main computing work, and the terminal device undertakes the secondary computing work; or the server 120 undertakes the secondary computing work, and the terminal device undertakes the main computing work; or the server 120 and the terminal device adopt a distributed computing architecture for collaborative computing.
[0047] In an illustrative example, the server 120 includes a memory 121, a processor 122, a user account database 123, a battle service module 124, and a user-oriented input / output interface (I / O interface) 125. The processor 122 is configured to load instructions stored in the server 120 and process data in the user account database 123 and the battle service module 124. The user account database 123 is configured to store data of user accounts used by the first terminal device 110, the second terminal device 130, and other terminal devices, such as avatars of the user accounts, nicknames of the user accounts, battle power indexes of the user accounts, and service areas in which the user accounts are located. The battle service module 124 is configured to provide a plurality of battle rooms for users to perform battles, such as 1V1 battles, 3V3 battles, 5V5 battles, and 1V5 battles. The user-oriented I / O interface 125 is configured to establish communication with the first terminal device 110 and / or the second terminal device 130 through a wireless network or a wired network and exchange data.
[0048] The method for displaying a skill indicator provided by the embodiments of the present application is performed by the terminal device alone.
[0049] During a game, in order to give a player an early warning of a skill release effect, a skill indicator is usually displayed before the skill is released, which indicates to the player a skill effect range generated in a virtual environment after a virtual object releases a skill. The skill effect range is a prediction result calculated by the terminal device based on in-game data, and may deviate from the actual skill effect range. Based on this, if there is a user-visible deviation between the skill effect range indicated by the skill indicator and the actual skill effect range, that is, the indication accuracy of the skill indicator is insufficient, the user's control of the release position of the skill will be interfered, resulting in a decrease in the user's game experience.
[0050] In the case of using frame synchronization technology, each game terminal device responds to user game operations and sends user operation data to the server, so that the server synchronizes all game data to each game terminal device at a fixed frequency, so that different game terminal devices render a game interface based on frame synchronization data from a logical level, so that each game terminal device maintains the same game display state. However, considering that there is a time delay in the data transmission process, the frame synchronization frequency between the terminal device and the server is usually low, and only the game interface is rendered from the logical level, which will affect the display fluency of the game interface, so the terminal device will usually render the game interface from the performance level. That is, the refresh display frequency of the interface from the performance level is higher than the refresh display frequency of the interface from the logical level, for example, the refresh frequency of the performance level is 60 FPS (Frame Per Second), and the refresh frequency of the logical level is 15 FPS.
[0051] Due to the performance difference of different terminal devices, the refresh frequency of different terminal devices at the performance level is different, that is, the display position of the same virtual object on the game interface at different terminal devices may be different from the performance level, and therefore the data of each terminal device still needs to be synchronized at the logic level to maintain the stability of the game. That is, during the game process, the terminal device needs to refresh and display the game interface at the performance level to ensure smooth picture, and also needs to refresh and display the game interface at the logic level to ensure the synchronization effect between the terminal devices.
[0052] Among them, at the performance level, the position of the virtual object displayed by the terminal device on the rendering picture is the performance position; at the logic level, the actual position of the virtual object recorded by the terminal device and synchronized with the server is the logic position. The terminal device maintains the logic position and the performance position of the virtual object at the same time.
[0053] For example, FIG. 2 shows a schematic diagram of the interface of the terminal device in the game. The virtual object 21 is located at the performance position. Among them, the skill indicator 22 shows the skill effect range (the area shown by the thick circular compass) and the releasable range (the thick maximum circular area) of the skill.
[0054] During the movement of the virtual object, due to the difference in refresh frequency between the performance position and the logic position, the problem that the logic position and the performance position of the virtual object do not coincide may occur. In addition, the refresh time interval of the logic position is fixed, while the refresh time interval of the performance position is not fixed, which may also cause the problem that the logic position and the performance position of the virtual object do not coincide. In addition, the skill indicator needs to be displayed according to the position of the virtual object. In the case that there is a difference between the logic position and the performance position of the virtual object, the skill indicator displayed based on the logic position and the skill indicator displayed based on the performance position will also have differences in indication accuracy and picture smoothness.
[0055] Among them, the skill indicator of the target skill displayed according to the performance position of the virtual object is easy to cause indication error, resulting in error between the actual skill effect and the indicated skill effect, while the skill indicator of the target skill displayed according to the logic position of the virtual object is easy to cause display lag.
[0056] In the related art, in order to ensure the smoothness of the picture of the terminal device, the skill indicator is usually displayed based on the performance position, which leads to the reduction of the indication accuracy of the skill indicator, so that in the case that the skill effect of the virtual object depends on the position of the virtual object, the indication error of the skill indicator will be magnified.
[0057] For example, as shown in FIG. 3, a skill indicator diagram based on the skill corresponding to the position of the virtual object is shown. The virtual object 301 releases a straight moving fireball in the direction of the arrow shown in the skill indicator 302 (the bold part). In the two display mechanisms based on the performance position and the logical position, there is a significant difference in the skill release path shown in the skill indicator 302.
[0058] FIG. 4 shows a skill release path diagram of a virtual object. In the skill release path displayed by the skill indicator based on the performance position, there are a first skill path 411, a second skill path 412 and a third skill path 413. In the skill release path displayed by the skill indicator based on the logical position, there are a first skill path 421, a second skill path 422 and a third skill path 423. The intersection of the paths is the selected position of the user for the skill, which is used to control the skill release range. In the case where the selected position is close to the position of the virtual object, as shown in FIG. 5, the difference in the skill release path shown in the skill indicator 501 will be further increased, and the virtual object 502 can release the skill in the opposite direction of the path shown in the skill indicator 501.
[0059] The embodiment of the present application provides a display method of a skill indicator. The skill indicator displayed by the method is a dynamic indicator. The display mechanism of the skill indicator can be switched according to the state of the virtual object in the actual use scene, so that the skill indicator has accurate display effects in various application scenes.
[0060] Please refer to FIG. 6, which shows a flowchart of the display method of the skill indicator provided by an exemplary embodiment of the present application. The method includes the following steps.
[0061] In step 610, a triggering operation on a target skill control is received. The target skill control is used to control the virtual object to release a target skill.
[0062] The target skill control refers to the triggered skill control, and the target skill refers to the skill released by the virtual object when the target skill control is triggered.
[0063] Optionally, the virtual object refers to an active object in a virtual environment controlled by a terminal device. The active object can be a virtual person, a virtual animal, etc. For example, a person or an animal displayed in a three-dimensional virtual environment. Optionally, the virtual object is a three-dimensional model created based on the animation skeleton technology. Each virtual object has its own shape and volume in the three-dimensional virtual environment, and occupies a part of the space in the three-dimensional virtual environment.
[0064] Optionally, the virtual environment refers to a three-dimensional environment in which the virtual object is located in the virtual world during the running of the application program in the terminal device. The virtual environment can be a simulation environment of the real world, or a semi-simulation and semi-fictional virtual environment, or a purely fictional virtual environment. For example, the virtual environment can include the sky, land, ocean, etc., and the land can include desert, city, and other environmental elements. Optionally, the virtual environment can be used to simulate the physical environment in the real world, such as terrain, weather, lighting, and physical interaction, etc., while also simulating objects and characters in the real world. The virtual environment creates and renders images by using computer graphics technology, such as simulating the physical process of light reflection, refraction, and scattering on the surface of an object, and converting it into an image. In addition, the virtual environment can also include audio and interactive elements, such as interactive control, flight simulator, and group behavior, etc.
[0065] Optionally, in addition to the virtual object and the virtual environment picture, the game interface usually also displays a skill control, and the user can control the virtual object to release a virtual skill in the game by triggering the skill control. Optionally, the virtual object has at least one virtual skill, and the game interface displays at least one skill control.
[0066] In some embodiments, in order to pre-announce the skill release effect corresponding to the skill control to the user, the terminal device can display a skill indicator when receiving the triggering operation of the user on the skill control and before the skill release, and prompt the user through the skill indicator the skill release effect corresponding to the skill control.
[0067] For example, as shown in FIG. 2, there are skill control 23, skill control 24, and skill control 25 in the terminal device interface. Among them, the terminal device displays the skill indicator 22 corresponding to the skill control 24 when receiving the triggering operation of the skill control 24.
[0068] Step 620, in the case that the virtual object is in a moving state, display a skill indicator of a target skill based on the performance position of the virtual object. The performance position is the position adopted by the client to render the virtual object, and the skill indicator is used to indicate the skill effect range after the target skill is released.
[0069] In some embodiments, the performance position is the position adopted by the client to render the virtual object, that is, the virtual object position at the performance level. Among them, the client can be understood as an application program installed on the terminal device, or can be directly understood as the terminal device. Optionally, in response to the user operation, the terminal device can render and display the virtual object at the performance level with a first refresh frequency.
[0070] Optionally, the skill indicator is used to indicate the skill effect range of the skill after the skill is released. The skill effect range refers to the range in which the skill of the virtual object takes effect. For example, in the case that the target skill is an attack skill, other virtual objects in the skill effect range will be hit.
[0071] In some embodiments, the skill effect range refers to the range in which the skill of the virtual object takes effect. The virtual skill is released by the virtual object and takes effect on other virtual objects in the skill effect range, so the display position of the skill indicator is related to the position of the virtual object. That is, the skill indicator is displayed around the virtual object with the virtual object position as the center. The terminal device needs to render the game interface from both the presentation layer and the logic layer, that is, the virtual object has two positions, the presentation position and the logic position, which leads to the deviation of the skill effect range indicated by the skill indicator of the target skill based on different position types.
[0072] In a possible implementation, the terminal device receives the triggering operation on the target skill control, and then displays the skill indicator. In the case that the control operation on the target skill control is received, the target skill effect range indicated by the skill indicator is changed. Subsequently, the terminal device completes the release of the target skill and displays the rendering effect of the target skill in the case that the release operation on the target skill control is received.
[0073] Optionally, in response to the displacement control operation of the user on the virtual object, the terminal device controls the virtual object to move in the virtual environment. In the case that the virtual object is in the moving state, that is, the virtual object is in the process of high-frequency position change, in order to ensure the smoothness of the picture display, the terminal device displays the virtual object on the game interface based on the presentation position of the virtual object.
[0074] In some embodiments, in the case that the position of the virtual object changes, the terminal device first sends the updated position of the virtual object to the server, so that the server synchronizes the updated position to other terminal devices in the game. Then, the terminal device receives the information of other terminal devices synchronized by the server, so as to update the state change of other virtual objects. In order to improve the smoothness of the picture, the terminal device will preferentially render the real-time movement of the virtual object before synchronizing with the server information, without waiting for the next update of the server, that is, the refresh frequency of the presentation position is higher than that of the logic position. Therefore, the skill indicator of the target skill based on the presentation position of the virtual object can adapt to the high-frequency position change of the virtual object, and the display effect of the skill indicator is improved in the case that the virtual object is in the moving state.
[0075] In addition, in the case that the virtual object is in a moving state and the target skill control is triggered, the accuracy of the virtual object hitting the target object when releasing the target skill is affected by the position movement of the virtual object and the control of the target skill control, that is, the process of aiming at the target while the virtual object is moving itself is difficult, so that the problem of insufficient accuracy of the skill indicator is difficult to detect. Moreover, the formation condition of the skill indicator indicating error during the movement of the virtual object is harsh, that is, compared with the case that the virtual object is in a stationary state, the probability of the skill indicator indicating error is lower when the virtual object is in a moving state.
[0076] For example, the formation condition of the error that the skill is released in the opposite direction of the skill indicator during the movement of the virtual object is harsh. This condition requires that the release position of the skill be determined between the logical position and the performance position of the virtual object during the movement of the virtual object, however, the logical position is invisible, and the gap between the performance position and the logical position changes with the movement of the virtual object. Similarly, other indicating error conditions also require that the skill release position be determined at a specific position that changes with the movement of the virtual object, which will affect the skill release effect.
[0077] From the above reasoning, it can be known that during the movement of the virtual object, the terminal device does not have high accuracy requirement for the indication of the skill indicator, and the skill indicator of the target skill is displayed based on the performance position of the virtual object, which can ensure the indication accuracy of the skill indicator and improve the display fluency of the skill indicator.
[0078] In step 630, in the case that the virtual object is in a stationary state, the skill indicator of the target skill is displayed based on the logical position of the virtual object, and the logical position is the position of the virtual object carried by the server and the client when performing frame synchronization, and the refresh frequency of the performance position is higher than that of the logical position.
[0079] In some embodiments, the logical position is the virtual object position on the logical layer. On the logical layer, the logical position of the virtual object is updated synchronously between each terminal device in the same session and the server, so that the server processes the session data through logical calculation.
[0080] In some embodiments, the frame synchronization indicator synchronizes the state update of all terminal devices in the local area to each terminal device, so as to realize data synchronization. The server first collects the state update requests sent by the terminal devices, and then synchronizes the update of all terminal devices to each terminal device according to a fixed refresh frequency. For example, the server receives the update request sent by terminal device A at 20 ms, receives the update request sent by terminal device B at 30 ms, receives the update request sent by terminal device C at 40 ms, and then synchronizes the update of the three terminal devices to terminal devices A, B and C at 50 ms when the refresh time is reached.
[0081] In some embodiments, the server needs to collect the logical positions of the virtual objects controlled by the terminal devices and then synchronizes the logical positions to the terminal devices. In order to ensure the smoothness of the picture, each terminal device needs to display the virtual object according to the performance position in real time. Obviously, the refresh frequency of the performance position is higher than that of the logical position.
[0082] In the case where the virtual object is in a static state, since there is no position update of the virtual object and the logical position does not change, the skill indicator will not cause display lag due to too low refresh frequency in the display process based on the logical position.
[0083] In some embodiments, the skill release process of the virtual object is essentially a process of determining the skill release effect through logical calculation at the logical level, and then mapping the skill release effect to the performance level for rendering and display. Therefore, the indication accuracy of the skill indicator when displayed based on the logical position is higher than that when displayed based on the performance position.
[0084] In summary, in the embodiments of the present application, in the case where the virtual object is in a moving state, the skill indicator of the target skill is displayed according to the performance position of the virtual object, which can ensure the display smoothness of the skill indicator during the movement of the virtual object. In the case where the virtual object is in a static state, the skill indicator of the target skill is displayed according to the logical position of the virtual object, which can improve the indication accuracy of the skill indicator in the static state. By displaying the skill indicator in different ways according to different motion states of the virtual object, the display effect of the skill indicator can be optimized.
[0085] In addition, since the skill indicator indication error during the movement of the virtual object is relatively difficult to detect, and the logical position of the virtual object in the static state remains unchanged, the lag problem caused by the low refresh frequency of the logical position disappears. Therefore, the technical solution provided by the embodiments of the present application can improve the indication accuracy of the skill indicator while ensuring the display smoothness.
[0086] In the above embodiments, the terminal device associates the display mechanism of the skill indicator with the motion state of the virtual object when receiving the triggering operation of the user on the target skill control. However, in the case where the terminal device does not receive the triggering operation of the user on the target skill control, the switching of the display mechanism of the skill indicator by the terminal device can cause redundant resource consumption. Therefore, in order to save resources and avoid meaningless switching behavior of the terminal device, the terminal device can determine the display mechanism of the skill indicator when it is necessary to display the skill indicator, that is, determine the display mechanism of the skill indicator based on the specific operation data of the triggering operation on the target skill control. Please refer to FIG. 7, which shows a flowchart of a display method of a skill indicator provided by another exemplary embodiment of the present application. The method includes the following steps.
[0087] Step 701, receiving a triggering operation on a target skill control, the target skill control being used to control a virtual object to release a target skill.
[0088] In the implementation process of step 701, reference can be made to step 610, and the embodiments of the present application will not be described herein.
[0089] Step 702, in the case where the virtual object is in a static state at an operation starting moment of the triggering operation, displaying a skill indicator of the target skill based on a logical position of the virtual object.
[0090] Optionally, the operation process of the triggering operation can include three stages of triggering, controlling and releasing, and the operation starting moment of the triggering operation is the moment when the user triggers the target skill control, and is also the starting moment of displaying the skill indicator. Therefore, in order to realize accurate display of the skill indicator, the terminal device needs to determine the display mechanism of the skill indicator according to the motion state of the virtual object at the operation starting moment.
[0091] In some embodiments, in the case where the virtual object is in a static state at the operation starting moment of the triggering operation, the terminal device can preferentially ensure the indication accuracy of the skill indicator, and display the skill indicator of the target skill based on the logical position of the virtual object. In the case where the virtual object is in a moving state at the operation starting moment of the triggering operation, the terminal device can preferentially ensure the display fluency of the game interface, and display the skill indicator of the target skill based on the performance position of the virtual object.
[0092] By combining the object motion state of the virtual object at the operation starting moment to determine the display mechanism of the skill indicator, the starting display effect of the skill indicator can be ensured, and a basis for subsequent switching of the display mechanism is provided.
[0093] Considering that the state change of the virtual object is independent, the virtual object can switch the motion state at any time. During the duration of the trigger operation, if the virtual object switches the motion state, the terminal device needs to change the display mechanism of the skill indicator in real time according to the state change of the virtual object. Wherein, in the case that the virtual object switches from the moving state to the static state, the determination process of the display mechanism of the skill indicator can include the following cases.
[0094] Case 1, during the duration of the trigger operation, in the case that the virtual object switches from the moving state to the static state, and the duration of the virtual object remaining in the static state reaches the duration threshold, the skill indicator is displayed based on the logical position of the virtual object.
[0095] Wherein, the duration of the trigger operation refers to the control stage of the user to the target skill control, that is, the time between triggering the target skill control and releasing the target skill control.
[0096] In some embodiments, during the duration of the trigger operation, the skill display is continuously displayed in the game interface. In the case that the virtual object is in the moving state, the terminal device can display the skill indicator of the target skill based on the performance position of the virtual object to ensure the smoothness of the picture, and in the case that the virtual object switches from the moving state to the static state, in order to save display resources, the terminal device can switch the display mechanism of the skill indicator from the performance position to the logical position.
[0097] In a possible implementation, during the duration of the trigger operation, in the case that the virtual object switches from the moving state to the static state, the terminal device can switch the display of the skill indicator from the performance position to the logical position. However, during the duration of the trigger operation, the motion state of the virtual object can frequently switch between the moving state and the static state, resulting in frequent switching of the display mechanism of the skill indicator. For example, in the case that the virtual object enters the static state from the moving state, and then immediately enters the moving state again, the display mechanism of the skill display is switched twice in succession. And, when the terminal device switches the display mechanism of the skill indicator, because the skill indicators displayed by different display mechanisms do not coincide, the skill indicator can also appear display flickering phenomenon. In the case of rapid and repeated switching of the state of the virtual object, the skill indicator will appear frequent flickering problem, which is easy to affect the skill aiming process, resulting in reduced skill release efficiency.
[0098] In a possible case, after each flickering of the skill indicator, because the switched skill display is discontinuous, the skill indicator needs to re-aim the target.
[0099] In addition, the display mechanism of frequently switching the skill indicator can also increase the operation burden of the terminal device, causing the skill indicator to display lag.
[0100] Therefore, in order to reduce the switching frequency of the display mechanism, the terminal device can set the time length during which the virtual object remains in the static state as one of the switching conditions of the display mechanism. Thus, in the case where the virtual object is switched from the moving state to the static state and the time length during which the virtual object remains in the static state reaches the time length threshold, the terminal device displays the skill indicator based on the logical position of the virtual object.
[0101] The time length threshold can be a value pre-set by the developer, or a dynamic value adjusted in real time based on the user's control operation on the virtual object, and the embodiments of the present application do not limit this. For example, the time length threshold can be 0.5 seconds.
[0102] Regarding the process of switching the display mechanism from being based on the logical position to being based on the performance position, optionally, in the case where the virtual object is in the static state, the terminal device displays the skill indicator based on the logical position of the virtual object in response to the triggering operation of the target skill control, so that, during the duration of the triggering operation, in the case where the virtual object is switched from the static state to the moving state, the terminal device can directly display the skill indicator based on the performance position of the virtual object after the state switching; or in the case where it is determined that the time length during which the virtual object remains in the moving state reaches the time length threshold, the terminal device displays the skill indicator based on the performance position of the virtual object again.
[0103] Case 2, in the case where the virtual object is switched from the moving state to the static state during the duration of the triggering operation, and the time length during which the virtual object remains in the static state does not reach the time length threshold, the skill indicator of the target skill is displayed based on the performance position of the virtual object.
[0104] In some embodiments, in the case where the virtual object is in the moving state, the terminal device displays the skill indicator of the target skill based on the performance position of the virtual object. Subsequently, the virtual object is switched from the moving state to the static state, and in the case where the time length during which the virtual object remains in the static state does not reach the time length threshold, the terminal device does not need to switch the display mechanism of the skill indicator, but only needs to maintain the display mechanism of the skill indicator in the moving state, that is, the terminal device continues to display the skill indicator of the target skill based on the performance position of the virtual object.
[0105] Optionally, the time length threshold can be a fixed value pre-set in the terminal device before the game starts, or a fixed value or a dynamic value sent by the server to the terminal device during the game. Optionally, the time length threshold can be set to 0.5 seconds.
[0106] In an example, FIG. 8 is a schematic diagram of a correspondence between a virtual object state and a skill indicator display mechanism. In a case where the virtual object is in a moving state, the terminal device uses a performance position to pre-calculate a skill effect; in a case where the virtual object is in a stationary state and a stationary state duration is less than 0.5s, the terminal device uses a performance position to pre-calculate; in a case where the virtual object is in a stationary state and a stationary state duration is greater than or equal to 0.5s, the terminal device uses a logical position to pre-calculate.
[0107] In an example, FIG. 9 is a state transition diagram of a virtual object. The virtual object can remain in a moving state or enter a stationary state from the moving state. The stationary state is divided into a stationary state with a stationary state duration less than 0.5s and a stationary state with a stationary state duration greater than 0.5s. The virtual object can enter a moving state from the stationary state with a stationary state duration less than 0.5s or enter a stationary state with a stationary state duration greater than 0.5s; or the virtual object can enter a moving state from the stationary state with a stationary state duration greater than 0.5s or remain in the stationary state with a stationary state duration greater than 0.5s.
[0108] In an embodiment of the present application, the display mechanism of the skill indicator is determined according to a virtual object state at an operation start time of a trigger operation, so that the terminal device can accurately determine the display mechanism of the skill indicator at a start time when the skill indicator needs to be displayed. For example, the display mechanism based on a logical position is determined according to a stationary state of the virtual object, or the display mechanism based on a performance position is determined according to a moving state of the virtual object.
[0109] In addition, during a duration of the trigger operation, the display mechanism of the skill indicator is switched in time according to a motion state change of the virtual object, so as to ensure a display effect of the skill indicator. At the same time, by taking a duration threshold as a switching determination condition of the display mechanism, it can be ensured that, in a case where a stationary state duration of the virtual object exceeds the duration threshold, the terminal device determines that the virtual object is in a stable stationary state, and then displays the skill indicator based on the logical position, thereby avoiding frequent switching of the display mechanism with the continuous switching of the motion state of the virtual object during the duration of the trigger operation, and further reducing resource consumption.
[0110] In a case where the stationary state duration of the virtual object does not reach the duration threshold, the terminal device maintains the display mechanism before the virtual object is switched from the moving state to the stationary state, so as to avoid frequent flickering and lag of the skill indicator due to switching of the display mechanism during continuous display, improve display fluency of the skill indicator, and thus improve a release accuracy of the target skill.
[0111] In some embodiments, the logical position and the performance position of the virtual object do not coincide, resulting in the indication difference of different display mechanisms (display mechanisms based on the logical level or the performance level) of the skill indicator. The difference between the logical position and the performance position of the virtual object is caused by the inconsistency of the refresh frequency of the terminal device at the logical level and the performance level.
[0112] In some embodiments, there is a performance difference between different terminal devices, and the refresh frequency of the performance position is different. Since the refresh frequency of the logical position of different virtual objects in the same session is the same, the difference in the refresh frequency of the virtual object on different terminal devices is different. The smaller the difference is, the smaller the difference between the logical position and the performance position is, the interference problem caused by switching the display mechanism of the skill indicator is reduced, the switching frequency requirement of the display mechanism is reduced, and the required time threshold is reduced.
[0113] Optionally, the terminal device can determine the time threshold according to the difference between the refresh frequency of the logical position and the performance position. As shown in FIG. 10, the time threshold determination process includes the following steps.
[0114] Step 1010, determining the difference between the refresh frequency of the performance position and the logical position.
[0115] In some embodiments, the difference between the refresh frequency is used to represent the difference between the refresh frequency of the performance position and the refresh frequency of the logical position. Optionally, the refresh frequency of the performance position is usually greater than the refresh frequency of the logical position, and the difference between the refresh frequency of the performance position and the refresh frequency of the logical position can be equal to the refresh frequency of the performance position minus the refresh frequency of the logical position.
[0116] In a possible implementation, according to the performance of the terminal device, at least two refresh frequency options can be provided for the user, so that the user can set the refresh frequency of the performance level based on the operation and the display requirement of the session. Thus, at the beginning of the session, the terminal device can determine the difference between the refresh frequency of the performance position and the logical position according to the refresh frequency of the performance level set by the user and the refresh frequency of the logical level with the server.
[0117] Step 1020, determining the time threshold based on the difference between the refresh frequency, and the time threshold is in a positive correlation with the difference between the refresh frequency.
[0118] In some embodiments, the smaller the difference between the refresh frequency is, the smaller the speed difference between the update speed of the performance position and the update speed of the logical position is, and the smaller the difference between the performance position and the logical position is in the case of movement of the virtual object. The difference between the performance position and the logical position is reduced, so that the difference of the skill indicator when switching the display mechanism of the skill indicator is reduced, and the interference of the flicker and the lag problem on the release of the skill of the virtual object is also reduced. At this time, the terminal device can appropriately reduce the time threshold.
[0119] From the above reasoning, it can be seen that the time length threshold and the refresh frequency difference are positively correlated, and the smaller the refresh frequency difference, the smaller the time length threshold.
[0120] In a possible implementation, the correspondence between the refresh frequency difference and the time length threshold can be pre-stored by the terminal device, so that after determining the refresh frequency difference, the terminal device can determine the time length threshold according to the pre-stored correspondence between the time length threshold and the refresh frequency difference.
[0121] In another possible implementation, the correspondence between the refresh frequency difference and the time length threshold can be stored by the server, so that after determining the refresh frequency difference, the terminal device sends the refresh frequency difference to the server, and the server determines the time length threshold according to the correspondence between the refresh frequency difference and the time length threshold, and sends the time length threshold to the terminal device.
[0122] In the embodiments of the present application, the terminal device determines the time length threshold according to the refresh frequency difference between the display position and the logical position, reduces the flicker and lag problems, and improves the timeliness of the terminal device in switching the display mechanism when the state of the virtual object changes.
[0123] In some embodiments, the gap between the virtual object logical position and the display position can also be affected by the moving speed of the virtual object. Among them, the moving speed of the virtual object and the gap between the virtual object logical position and the display position are positively correlated. Based on this, the terminal device can further determine the display mechanism of the skill indicator according to the historical moving speed of the virtual object. As shown in FIG. 11, the skill indicator display process based on the historical moving speed can include the following steps.
[0124] Step 1110, obtaining the historical moving speed of the virtual object.
[0125] In some embodiments, the historical moving speed is used to represent the recent moving speed of the virtual object. Among them, in the case of slow historical moving speed, the moving distance of the virtual object per unit time is reduced, the logical position is always refreshed slower than the display position, the distance moved by the display position before the logical position is shortened, and the gap between the display position and the logical position is reduced; in the case of fast historical moving speed, the moving distance of the virtual object per unit time is increased, and since the logical position is always refreshed slower than the display position, the distance moved by the display position before the logical position is extended, and the gap between the display position and the logical position is increased.
[0126] In a possible implementation, the terminal device determines the average value of the moving speed of the virtual object in a fixed period of time before the current time as the historical moving speed.
[0127] In another possible implementation, the terminal device determines the moving speed of the virtual object in the previous second as the historical moving speed.
[0128] In another possible implementation, the terminal device determines the mean square error value of the moving speed of the virtual object in a fixed time period before the current time as the historical moving speed.
[0129] In step 1120, during the duration of the triggering operation, in a case where the virtual object is switched from the moving state to the static state and the historical moving speed is greater than the speed threshold, the terminal device displays the skill indicator based on the logical position of the virtual object.
[0130] In some embodiments, the historical moving speed being greater than the speed threshold indicates that the virtual object was previously in a fast moving state, and the gap between the performance position and the logical position is increased. In a case where the virtual object is switched from the moving state to the static state, displaying the skill indicator based on the performance position will cause the difference between the skill release range indicated by the skill indicator and the actual skill release range to be increased, such as a path difference problem between the indicated skill release range and the actual skill release range.
[0131] Based on this, during the duration of the triggering operation, in a case where the virtual object is switched from the moving state to the static state and the historical moving speed is greater than the speed threshold, in order to avoid keeping the skill indicator displayed based on the performance position, which will cause the indication error to affect the judgment of the user, the terminal device can immediately switch the display mechanism from being based on the performance position to being based on the logical position, and thus display the skill indicator based on the logical position of the virtual object.
[0132] The speed threshold can be a pre-set fixed value or a dynamic value set based on the object attribute of the virtual object, and the embodiments of the present application do not limit this. Optionally, the speed threshold can be pre-stored in the terminal device before the game, or can be obtained by the terminal device from the server during the game.
[0133] Optionally, during the duration of the triggering operation, in a case where the virtual object is switched from the moving state to the static state and the historical moving speed is not greater than the speed threshold, that is, the difference between the skill indicator displayed based on the performance position and the skill indicator displayed based on the logical position is small, the terminal device can further display the skill indicator of the target skill based on the performance position of the virtual object.
[0134] In some embodiments, the historical moving speed being less than the speed threshold indicates that the virtual object was previously in a slow moving state, and the gap between the performance position and the logical position is reduced. In a case where the virtual object is switched from the moving state to the static state, displaying the skill indicator based on the logical position will cause the skill indicator to display a lag, thereby reducing the release efficiency and release accuracy of the target skill.
[0135] In the embodiments of the present application, during the duration of the triggering operation, the terminal device further determines the display mechanism of the skill indicator on the basis of the state of the virtual object and the historical moving speed. In the case where the virtual object switches from the moving state to the static state, the display mechanism is different when the historical moving speed is different.
[0136] In the case where the historical moving speed is greater than the speed threshold, the gap between the performance position and the logical position is increased, so that the skill indicator is displayed based on the logical position in time when the virtual object switches from the moving state to the static state, the gap between the skill effect range indicated by the skill indicator and the actual skill effect range is reduced, the skill effect indicated by the skill indicator is consistent with the actual release, the indication error is reduced, the indication accuracy of the skill indicator is improved, and the indication accuracy problem of the skill indicator is avoided to interfere with the aiming and release of the skill, thereby improving the accuracy of the skill release.
[0137] On the contrary, in the case where the historical moving speed is not greater than the speed threshold, the deviation between the skill indicator displayed based on the performance position and the skill indicator displayed based on the logical position is reduced, and the influence on the indication accuracy is reduced, so that the skill indicator displayed based on the performance position can avoid display lag and improve the fluency when the virtual object switches from the moving state to the static state.
[0138] Optionally, the terminal device can also use the historical position deviation of the virtual object as the switching condition of the display mechanism of the skill indicator, and the historical position deviation refers to the position deviation between the historical logical position and the historical performance position of the virtual object. As shown in FIG. 12, the skill indicator display process based on the historical position deviation can include the following steps.
[0139] Step 1210: Determine the historical position deviation of the virtual object, and the historical position deviation is the position deviation between the historical logical position and the historical performance position.
[0140] In some embodiments, the historical position deviation is used to represent the position difference between the logical position and the performance position of the virtual object in the recent period of time. The greater the historical position deviation, the greater the gap between the logical position and the performance position, and the more obvious the difference between the skill indicator displayed based on the performance position and the skill indicator displayed based on the logical position.
[0141] Optionally, the historical position deviation can be the position deviation between the historical logical position and the historical performance position one second before the current time.
[0142] Optionally, the historical position deviation can also be the average of the position deviation between the historical logical position and the historical performance position in a period of time before the current time.
[0143] Optionally, the historical position deviation can also be a position deviation mean square error value between the historical logical position and the historical performance position in a period of time before the current time.
[0144] In step 1220, during the duration of the triggering operation, if the virtual object is switched from the moving state to the stationary state and the historical position deviation is greater than the deviation threshold, the terminal device displays the skill indicator based on the logical position of the virtual object.
[0145] In some embodiments, if the historical position deviation is greater than the deviation threshold, after the virtual object is switched from the moving state to the stationary state, the deviation between the performance position and the logical position also increases accordingly, and continuing to display the skill indicator based on the performance position will cause the problem of inaccurate indication of the skill indicator, thereby affecting the skill release. Therefore, during the duration of the triggering operation, if the virtual object is switched from the moving state to the stationary state and the historical position deviation is greater than the deviation threshold, the terminal device switches the display mechanism of the skill indicator from being based on the performance position to being based on the logical position, that is, the terminal device displays the skill indicator based on the logical position of the virtual object.
[0146] Optionally, the deviation threshold can be a pre-set fixed value or a dynamic value set based on the object attribute of the virtual object, and the embodiments of the present application do not limit this. Optionally, the deviation threshold can be pre-stored in the terminal device before the game, or obtained by the terminal device from the server during the game.
[0147] Optionally, the terminal device can also display the skill indicator of the target skill based on the performance position of the virtual object during the duration of the triggering operation, if the virtual object is switched from the moving state to the stationary state and the historical position deviation is not greater than the deviation threshold.
[0148] In some embodiments, if the historical position deviation is less than the deviation threshold, after the virtual object is switched from the moving state to the stationary state, the deviation between the performance position and the logical position decreases accordingly, and the influence of displaying the skill indicator based on the performance position on the indication accuracy decreases, so the terminal device can not need to switch the display mechanism of the skill indicator and maintain displaying the skill indicator based on the performance position of the virtual object.
[0149] In the embodiments of the present application, the terminal device further determines the display mechanism of the skill indicator according to the historical position deviation between the historical logical position and the historical performance position. If the virtual object is switched from the moving state to the stationary state and the historical position deviation is greater than the deviation threshold, the skill indicator displayed based on the performance position is switched to the skill indicator displayed based on the logical position, which can avoid the influence of the position deviation on the skill indication and improve the indication accuracy.
[0150] In a case where the virtual object switches from the moving state to the static state and the historical position deviation is not greater than the deviation threshold, the influence of the performance position display skill indicator on the indication accuracy is reduced, the performance position display skill indicator is maintained, display lag caused by too small refresh frequency is avoided, indication fluency of the skill indicator is improved, the skill indicator is easy to aim, and skill release accuracy is improved.
[0151] In some embodiments, different virtual objects have different types of skills. The skill indicator behaves differently when indicating different types of skills.
[0152] Optionally, the skill types can be divided into skills irrelevant to the virtual object position and skills relevant to the virtual object position. Non-coincidence of the logical position and the performance position of the virtual object will cause inconsistency between the actual release effect of the skill relevant to the virtual object position and the indication effect of the skill indicator.
[0153] In some embodiments, the skill indicator determines the skill selected position by displaying a skill indication compass, so as to subsequently release the skill.
[0154] It should be noted that the selected positions of the skill indicators on the logical level and the performance level are consistent, and therefore, the accuracy of the skills irrelevant to the virtual object position is not affected by the logical position and the performance position. For example, FIG. 13 shows a comparison diagram of skill indicators corresponding to two types of skills. The diagram includes a virtual object 1310 and a virtual object 1320. The skill indicator of the virtual object 1310 shows an indication compass 1331 for determining a skill release position, and there is no distinction between the performance position and the logical position of the skill release position. The skill indicator of the virtual object 1320 shows an indication compass 1332 for determining an intersection of a skill release path. In a case where the indication compass 1332 moves, the intersection of the skill release path changes, so that the skill release path changes.
[0155] The performance position and the logical position of the virtual object are inconsistent, causing inconsistency of the linear path extending from the virtual object position to the skill selection position, affecting the determination of the skill hit. Among them, the closer the skill selection position is to the virtual object (logical position and performance position), the greater the path difference. FIG. 14 shows a schematic diagram of the position relationship affecting the path difference. As shown in (a) of FIG. 14, the path indicated by the skill indicator displayed based on the logical position 1401 is different from the path indicated by the skill indicator displayed based on the performance position 1402. As shown in (b) of FIG. 14, as the skill selection position 1403 approaches the logical position 1401 and the performance position 1402, the direction difference of the skill indication path increases. As shown in (c) of FIG. 14, in the case where the skill selection position 1403 is located between the logical position 1401 and the performance position 1402, the skill release direction on the straight line path from the logical position 1401 to the skill selection position 1403 is opposite to the skill release direction on the straight line path from the performance position 1402 to the skill selection position 1403, causing the actual skill release direction of the virtual object to be opposite to the skill release direction indicated by the skill indicator.
[0156] Due to the automatic steering mechanism of the virtual object, in the case where the skill release direction is opposite to the direction indicated by the skill indicator, the virtual object will automatically face the skill release direction. For example, the skill indicator indicates that the skill is emitted to the front of the virtual object (from the relative direction of the performance position of the virtual object to the skill selection position), while the actual skill is emitted from the relative direction of the logical position of the virtual object to the skill selection position, which will cause the virtual object to turn around and release the skill in the back in the case shown in (c) of FIG. 14.
[0157] Optionally, the terminal device can take the skill type as a condition for determining the display mechanism of the skill indicator. In a possible implementation, in the case where the virtual object is in a stationary state and the target skill belongs to a target skill type, the terminal device can display the skill indicator of the target skill based on the logical position of the virtual object.
[0158] Among them, the target skill type refers to the skill type related to the virtual object position, and the actual skill range of the skill belonging to the target skill type is determined based on the logical position of the virtual object and the position indicated by the skill indicator.
[0159] In some embodiments, due to the display of the skill indicator of the target skill based on the performance position, the above-mentioned skill reverse release problem may occur, and the target skill type is actually used to determine the skill effect range based on the logical position and the position indicated by the skill indicator, such as determining the straight line path therebetween as the skill release path, so as to ensure the accuracy of the skill indication, the terminal device displays the skill indicator of the target skill based on the logical position of the virtual object.
[0160] In addition, in the case that the virtual object is in the static state and the target skill does not belong to the target skill type, the terminal device can display the skill indicator of the target skill based on the performance position of the virtual object.
[0161] In some embodiments, the target skill not belonging to the target skill type refers to a skill type irrelevant to the virtual object position, and the virtual object position has no influence on the skill indication and release, so the terminal device does not need to determine the skill indicator as the skill indicator of the target skill displayed based on the logical position, and thus the display is based on the performance position of the virtual object.
[0162] In the embodiments of the present application, in the case that the virtual object is in the static state and the target skill belongs to the target skill type, the skill indicator of the target skill is displayed based on the logical position, which can improve the accuracy of the skill indicator of the target skill, avoid the problem of reverse release of the skill, and thus improve the accuracy of the skill release.
[0163] In the case that the virtual object is in the static state and the target skill does not belong to the target skill type, the display of the skill indicator of the target skill based on the performance position will not affect the indication accuracy of the skill indicator, and the display fluency and indication flexibility of the skill indicator can be improved by the refresh frequency of the performance position.
[0164] Optionally, the terminal device can also correct the position deviation between the logical position and the performance position to improve the indication accuracy of the skill indicator in the moving state. As shown in FIG. 15, the display process of the skill indicator based on the deviation correction includes the following steps.
[0165] Step 1510, in the case that the virtual object is in the moving state, the performance position of the virtual object is corrected based on the historical position deviation of the virtual object, and the historical position deviation is the position deviation between the historical logical position and the historical performance position.
[0166] In some embodiments, the position deviation of the virtual object refers to the deviation in the vector direction between the logical position and the performance position of the virtual object. Optionally, the position deviation can include the distance deviation and the angle deviation between the logical position and the performance position. For example, the performance position is 3 units away from the logical position in the direction of 45°.
[0167] In a possible implementation, in the case that the virtual object is in the moving state, the terminal device can determine the historical position deviation according to the relative direction and the relative distance between the historical performance position and the historical logical position, and thus correct the performance position based on the historical position deviation to reduce the difference between the performance position and the logical position. Wherein, the refresh frequency of the performance position before and after the correction is unchanged.
[0168] At step 1520, display the skill indicator of the target skill based on the corrected performance position.
[0169] In some embodiments, after correcting the performance position, the terminal device can display the skill indicator of the target skill based on the corrected performance position. In this case, the gap between the corrected performance position and the logical position is smaller than the gap between the performance position before correction and the logical position, and the refresh frequency of the corrected performance position is the refresh frequency of the performance position before correction.
[0170] Further, it is considered that the moving speed of the virtual object can affect the gap between the performance position and the logical position. In the case where the moving speed of the virtual object is accelerated, since the time interval for refreshing the logical position is fixed, the moving distance of the virtual object in the time interval is extended, which can cause the gap between the performance position and the logical position to become larger without refreshing the logical position next time.
[0171] That is, the moving speed of the virtual object is too fast, which can easily aggravate the difference between the performance position and the logical position. Therefore, the terminal device needs to correct the performance position of the virtual object in combination with the moving speed of the virtual object.
[0172] Optionally, the terminal device can correct the performance position based on the historical moving speed and the historical position deviation. As shown in FIG. 16, the display process of the skill indicator based on the deviation correction can further include the following steps.
[0173] At step 1610, determine the historical moving speed of the virtual object.
[0174] In some embodiments, the historical moving speed is used to represent the moving speed of the virtual object in the recent period. By determining the historical moving speed, the speed condition of the virtual object in the recent period can be determined, and then the difference between the current performance position and the logical position can be determined. In the case where the historical moving speed is too fast, the terminal device determines that the difference between the current performance position and the logical position is too large, and the performance position needs to be corrected to reduce the difference.
[0175] In one possible implementation, the terminal device determines the average value of the moving speed of the virtual object in a fixed period before the current time as the historical moving speed.
[0176] In another possible implementation, the terminal device determines the moving speed of the virtual object one second before the current time as the historical moving speed.
[0177] In another possible implementation, the terminal device determines the mean square error value of the moving speed of the virtual object in a fixed period before the current time as the historical moving speed.
[0178] In step 1620, in a case where the historical moving speed is greater than the speed threshold and the virtual object is in the moving state, the performance position of the virtual object is corrected based on the historical position deviation of the virtual object.
[0179] In some embodiments, the historical moving speed greater than the speed threshold indicates that the virtual object has moved at a high speed in a recent period of time. The moving distance of the virtual object per unit time is increased, and since the logical position is always refreshed slower than the performance position, the distance by which the performance position moves earlier than the logical position is prolonged, and the historical position deviation between the performance position and the logical position is increased.
[0180] The historical position deviation of the virtual object refers to the deviation in the vector direction between the logical position and the performance position of the virtual object. Optionally, the historical position deviation can include the distance deviation and the angle deviation between the logical position and the performance position. For example, the performance position is at a position 3 units away in the direction of 45° of the logical position.
[0181] In a possible implementation, the terminal device determines the historical position deviation according to the relative direction and the relative distance between the historical performance position and the historical logical position, and in a case where the historical moving speed of the virtual object is greater than the speed threshold and the virtual object is in the moving state, corrects the performance position based on the historical position deviation to reduce the difference between the performance position and the logical position. Wherein the refresh frequency of the performance position before and after the correction is unchanged.
[0182] Optionally, in a case where the historical moving speed of the virtual object is not greater than the speed threshold, it indicates that the historical position deviation is relatively small, and therefore the terminal device can not correct the performance position of the virtual object, thereby reducing the consumption of computing resources.
[0183] In step 1630, the skill indicator of the target skill is displayed based on the corrected performance position.
[0184] In some embodiments, after correcting the performance position, the terminal device can display the skill indicator of the target skill based on the corrected performance position. Wherein the difference between the corrected performance position and the logical position is smaller than the difference between the performance position before the correction and the logical position, and the refresh frequency of the corrected performance position is the same as that of the performance position before the correction.
[0185] In the embodiments of the present application, in a case where the virtual object is in the moving state, the performance position of the virtual object is corrected based on the historical position deviation of the virtual object. The difference in position between the corrected performance position and the logical position is reduced, and the refresh frequency of the corrected performance position is the same as that of the performance position before the correction, so that the skill indicator of the target skill is displayed based on the corrected performance position, which can improve the indication accuracy of the skill indicator and the display fluency of the skill indicator.
[0186] In addition, the terminal device determines that the historical position deviation increases according to the historical moving speed being greater than the speed threshold, and modifies the performance position according to the historical position deviation, so that the gap between the logical position and the performance position can be significantly reduced, and the indication accuracy of the skill indicator can be improved. In addition, the refresh frequency of the modified performance position remains unchanged, so that the display fluency of the skill indicator is ensured.
[0187] Referring to FIG. 17, a structural block diagram of a display device of a skill indicator is shown, which includes:
[0188] The receiving module 1701 is configured to receive a trigger operation on a target skill control, the target skill control being used to control a virtual object to release a target skill, the target skill control being a skill control that is triggered, and the target skill being a skill released by the virtual object when the target skill control is triggered.
[0189] The first display module 1702 is configured to display a skill indicator of the target skill based on a performance position of the virtual object when the virtual object is in a moving state, the performance position being a position used by a client to render the virtual object, and the skill indicator being used to indicate a skill effect range of the target skill after the target skill is released.
[0190] The second display module 1703 is configured to display the skill indicator of the target skill based on a logical position of the virtual object when the virtual object is in a stationary state, the logical position being a position of the virtual object carried by a server when performing frame synchronization with the client, and a refresh frequency of the performance position being higher than a refresh frequency of the logical position.
[0191] Optionally, the second display module 1703 is further configured to:
[0192] display the skill indicator of the target skill based on the logical position of the virtual object when the virtual object is in the stationary state at an operation start time of the trigger operation.
[0193] Optionally, the second display module 1703 is further configured to:
[0194] display the skill indicator based on the logical position of the virtual object when the virtual object is switched from the moving state to the stationary state and a duration of the virtual object remaining in the stationary state reaches a duration threshold during a duration of the trigger operation.
[0195] Optionally, the apparatus further includes:
[0196] The first display module 1702 is configured to display the skill indicator of the target skill based on the performance position of the virtual object during the duration of the trigger operation, in a case where the virtual object is switched from the moving state to the static state and a time length for which the virtual object remains in the static state does not reach the time length threshold.
[0197] Optionally, the apparatus further includes:
[0198] A difference determination module is configured to determine a refresh frequency difference between the performance position and the logical position.
[0199] A threshold determination module is configured to determine the time length threshold based on the refresh frequency difference, the time length threshold being in a positive correlation with the refresh frequency difference.
[0200] Optionally, the apparatus further includes:
[0201] A speed acquisition module is configured to acquire a historical moving speed of the virtual object.
[0202] The second display module 1703 is further configured to:
[0203] display the skill indicator based on the logical position of the virtual object during the duration of the trigger operation, in a case where the virtual object is switched from the moving state to the static state and the historical moving speed is greater than a speed threshold.
[0204] Optionally, the apparatus further includes:
[0205] The first display module 1702 is configured to display the skill indicator of the target skill based on the performance position of the virtual object during the duration of the trigger operation, in a case where the virtual object is switched from the moving state to the static state and the historical moving speed is not greater than the speed threshold.
[0206] Optionally, the apparatus further includes:
[0207] A deviation determination module is configured to determine a historical position deviation of the virtual object, the historical position deviation being a position deviation between a historical logical position and a historical performance position.
[0208] The second display module 1703 is further configured to:
[0209] display the skill indicator based on the logical position of the virtual object during the duration of the trigger operation, in a case where the virtual object is switched from the moving state to the static state and the historical position deviation is greater than a deviation threshold.
[0210] Optionally, the apparatus further comprises:
[0211] The first display module 1702 is configured to display the skill indicator of the target skill based on the performance position of the virtual object in a case where the virtual object is switched from the moving state to the static state during the duration of the trigger operation, and the historical position deviation is not greater than the deviation threshold.
[0212] Optionally, the second display module 1703 is further configured to:
[0213] In a case where the virtual object is in the static state and the target skill belongs to a target skill type, the skill indicator of the target skill is displayed based on the logical position of the virtual object, wherein the target skill type refers to a skill type related to the virtual object position, and the actual skill range of the skill belonging to the target skill type is determined based on the logical position of the virtual object and the position indicated by the skill indicator.
[0214] Optionally, the apparatus further comprises:
[0215] The first display module 1702 is configured to display the skill indicator of the target skill based on the performance position of the virtual object in a case where the virtual object is in the static state and the target skill does not belong to the target skill type.
[0216] Optionally, the first display module 1702 is further configured to:
[0217] In a case where the virtual object is in the moving state, the performance position of the virtual object is corrected based on a historical position deviation of the virtual object, the historical position deviation being a position deviation between a historical logical position and a historical performance position.
[0218] The skill indicator of the target skill is displayed based on the corrected performance position.
[0219] Optionally, the apparatus further comprises:
[0220] A speed determination module is configured to determine a historical moving speed of the virtual object.
[0221] The first display module 1702 is further configured to:
[0222] In a case where the historical moving speed is greater than a speed threshold and the virtual object is in the moving state, the performance position of the virtual object is corrected based on the historical position deviation of the virtual object.
[0223] In summary, in the embodiments of the present application, in the case that the virtual object is in a moving state, the skill indicator of the target skill is displayed according to the performance position of the virtual object, which can ensure the display fluency of the skill indicator during the movement of the virtual object; in the case that the virtual object is in a stationary state, the skill indicator of the target skill is displayed according to the logical position of the virtual object, which can improve the indication accuracy of the skill indicator in the stationary state. By displaying the skill indicator in different ways according to different motion states of the virtual object, the display effect of the skill indicator can be optimized.
[0224] In addition, since the problem of indication error of the skill indicator during the movement of the virtual object is relatively difficult to detect, and the logical position of the virtual object in the stationary state remains unchanged, the lag problem caused by the low refresh frequency of the logical position disappears, therefore, the technical solution provided by the embodiments of the present application can improve the indication accuracy of the skill indicator while ensuring the display fluency.
[0225] It should be noted that: the device provided in the above embodiments is only exemplified by the division of the above functional modules, and in actual application, the above functions can be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the device and method embodiments provided in the above embodiments belong to the same concept, and the implementation process is detailed in the method embodiments, which will not be described here.
[0226] Please refer to FIG. 18, which shows a structural block diagram of a terminal device 1800 provided by an example embodiment of the present application. The terminal device 1800 can be a portable mobile terminal device, such as a smart phone, a tablet computer, a Moving Picture Experts Group Audio Layer III (MP3) player, a Moving Picture Experts Group Audio Layer IV (MP4) player. The terminal device 1800 can also be referred to as a user equipment, a portable terminal device, and other names.
[0227] Generally, the terminal device 1800 includes a processor 1801 and a memory 1802.
[0228] The processor 1801 can include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like. The processor 1801 can be implemented in at least one of a hardware form of a digital signal processing (DSP), a field-programmable gate array (FPGA), a programmable logic array (PLA), and the like. The processor 1801 can also include a main processor and a co-processor, the main processor being a processor for processing data in an awake state, also known as a central processing unit (CPU), and the co-processor being a low-power processor for processing data in a standby state. In some embodiments, the processor 1801 can be integrated with a graphics processor (GPU) for rendering and drawing content required to be displayed by a display screen. In some embodiments, the processor 1801 can further include an artificial intelligence (AI) processor for processing computing operations related to machine learning.
[0229] The memory 1802 can include one or more computer-readable storage media that can be tangible and non-transitory. The memory 1802 can also include high-speed random access memory and non-volatile memory such as one or more magnetic disk storage devices, flash memory devices. In some embodiments, the non-transitory computer-readable storage medium in the memory 1802 is used to store at least one instruction for being executed by the processor 1801 to implement the method for displaying a virtual object provided by the embodiments of the present application.
[0230] In some embodiments, the terminal device 1800 can also optionally include a peripheral device interface 1803 and at least one peripheral device.
[0231] The peripheral device interface 1803 can be used to connect at least one peripheral device related to input / output (I / O) to the processor 1801 and the memory 1802. In some embodiments, the processor 1801, the memory 1802, and the peripheral device interface 1803 are integrated on the same chip or circuit board; in some other embodiments, any one or two of the processor 1801, the memory 1802, and the peripheral device interface 1803 can be implemented on a separate chip or circuit board, and the present embodiment does not limit this.
[0232] Those skilled in the art can understand that the structure shown in FIG. 18 does not constitute a limitation on the terminal device 1800, and can include more or fewer components than shown, or combine certain components, or use different arrangements of components.
[0233] The embodiment of the present application further provides a computer readable storage medium, which stores at least one computer instruction, and the at least one computer instruction is loaded and executed by a processor to implement the display method of the skill indicator.
[0234] The embodiment of the present application further provides a computer program product, which comprises computer instructions stored in a computer readable storage medium, and a processor acquires the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to implement the display method of the skill indicator.
[0235] Those skilled in the art should be aware that, in one or more examples described above, the functions described in the embodiments of the present application can be implemented in hardware, software, firmware or any combination thereof. When implemented in software, the functions can be stored in a computer readable storage medium or transmitted as one or more instructions or codes on a computer readable storage medium. The computer readable storage medium includes computer storage medium and communication medium, and the communication medium includes any medium that facilitates the transfer of computer program from one place to another. The storage medium can be any available medium accessible by a general or special purpose computer.
[0236] The above description is only optional embodiments of the present application, and does not limit the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. A display method of a skill indicator, the method being performed by a terminal device, the method comprising: receiving a triggering operation on a target skill control, the target skill control being used to control a virtual object to release a target skill, the target skill control being a triggered skill control, the target skill being a skill released by the virtual object when the target skill control is triggered; in a case where the virtual object is in a moving state, displaying a skill indicator of the target skill based on a performance position of the virtual object, the performance position being a position of the virtual object adopted by a client for rendering the virtual object, the skill indicator being used to indicate a skill effect range after the target skill is released; in a case where the virtual object is in a stationary state, displaying the skill indicator of the target skill based on a logical position of the virtual object, the logical position being a position of the virtual object carried by a server when performing frame synchronization with the client, and a refresh frequency of the performance position being higher than a refresh frequency of the logical position.
2. The method of claim 1, wherein, The displaying, in the case where the virtual object is in the stationary state, the skill indicator of the target skill based on the logical position of the virtual object, comprises: in a case where the virtual object is in the stationary state at an operation starting moment of the triggering operation, displaying the skill indicator of the target skill based on the logical position of the virtual object.
3. The method of claim 2, wherein, The displaying, in the case where the virtual object is in the stationary state, the skill indicator of the target skill based on the logical position of the virtual object, further comprises: in a case where the virtual object is switched from the moving state to the stationary state during a duration of the triggering operation, and a duration that the virtual object remains in the stationary state reaches a duration threshold, displaying the skill indicator based on the logical position of the virtual object.
4. The method of claim 3, wherein, The method further comprises: in a case where the virtual object is switched from the moving state to the stationary state during the duration of the triggering operation, and a duration that the virtual object remains in the stationary state does not reach the duration threshold, displaying the skill indicator of the target skill based on the performance position of the virtual object.
5. The method of claim 3, wherein, The method further comprises: determining a refresh frequency difference between the performance position and the logical position; determining the duration threshold based on the refresh frequency difference, the duration threshold being in a positive correlation with the refresh frequency difference.
6. The method of claim 2, wherein, The method further comprises: obtaining a historical moving speed of the virtual object; The displaying, in the case where the virtual object is in the stationary state, the skill indicator of the target skill based on the logical position of the virtual object, further comprises: in a case where the virtual object is switched from the moving state to the stationary state during the duration of the triggering operation, and the historical moving speed is greater than a speed threshold, displaying the skill indicator based on the logical position of the virtual object.
7. The method of claim 6, wherein, The method further comprises: During the duration of the triggering operation, in a case where the virtual object is switched from the moving state to the static state and the historical moving speed is not greater than the speed threshold, the skill indicator of the target skill is displayed based on the performance position of the virtual object.
8. The method of claim 2, wherein, The method further comprises: determining a historical position deviation of the virtual object, the historical position deviation being a position deviation between a historical logical position and a historical performance position; the displaying, in a case where the virtual object is in a static state, the skill indicator of the target skill based on a logical position of the virtual object, further comprises: during the duration of the triggering operation, in a case where the virtual object is switched from the moving state to the static state and the historical position deviation is greater than a deviation threshold, the skill indicator is displayed based on the logical position of the virtual object.
9. The method of claim 8, wherein, The method further comprises: during the duration of the triggering operation, in a case where the virtual object is switched from the moving state to the static state and the historical position deviation is not greater than the deviation threshold, the skill indicator of the target skill is displayed based on the performance position of the virtual object.
10. The method according to any one of claims 1 to 9, wherein, the displaying, in a case where the virtual object is in a static state, the skill indicator of the target skill based on a logical position of the virtual object, comprises: in a case where the virtual object is in the static state and the target skill belongs to a target skill type, the skill indicator of the target skill is displayed based on the logical position of the virtual object, wherein the target skill type refers to a skill type related to the virtual object position, and an actual skill range of a skill belonging to the target skill type is determined based on the logical position of the virtual object and a position indicated by the skill indicator.
11. The method of claim 10, wherein, The method further comprises: in a case where the virtual object is in the static state and the target skill does not belong to the target skill type, the skill indicator of the target skill is displayed based on the performance position of the virtual object.
12. The method of any one of claims 1 to 11, wherein, the displaying, in a case where the virtual object is in a moving state, the skill indicator of the target skill based on a performance position of the virtual object, comprises: in a case where the virtual object is in the moving state, the performance position of the virtual object is corrected based on a historical position deviation of the virtual object, the historical position deviation being a position deviation between a historical logical position and a historical performance position; the skill indicator of the target skill is displayed based on the corrected performance position.
13. The method of claim 12, wherein, The method further comprises: determining a historical moving speed of the virtual object; the correcting, in a case where the virtual object is in the moving state, the performance position of the virtual object based on a historical position deviation of the virtual object, comprises: in a case where the historical moving speed is greater than a speed threshold and the virtual object is in the moving state, the performance position of the virtual object is corrected based on the historical position deviation of the virtual object.
14. A display device of a skill indicator, the device comprising: a receiving module configured to receive a triggering operation on a target skill control, the target skill control being configured to control a virtual object to release a target skill, the target skill control being a triggered skill control, the target skill being a skill released by the virtual object when the target skill control is triggered; a first display module configured to display a skill indicator of the target skill based on a performance position of the virtual object when the virtual object is in a moving state, the performance position being a position of the virtual object adopted by a client for rendering the virtual object, the skill indicator being configured to indicate a skill effect range of the target skill after the target skill is released; a second display module configured to display the skill indicator of the target skill based on a logical position of the virtual object when the virtual object is in a stationary state, the logical position being a position of the virtual object carried by a server when performing frame synchronization with the client, and a refresh frequency of the performance position being higher than a refresh frequency of the logical position.
15. A terminal device, comprising a processor and a memory, the memory storing at least one computer instruction, the at least one computer instruction being loaded and executed by the processor to implement the display method of the skill indicator according to any one of claims 1 to 13.
16. A computer-readable storage medium, storing at least one computer instruction, the at least one computer instruction being loaded and executed by a processor to implement the display method of the skill indicator according to any one of claims 1 to 13.
17. A computer program product, comprising computer instructions stored in a computer-readable storage medium; a processor of a terminal device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions to enable the terminal device to implement the display method of the skill indicator according to any one of claims 1 to 13.
Citation Information
Patent Citations
Virtual object control method and device, information synchronization method and device, equipment and medium
CN111494937A
Virtual character control method, device and equipment and storage medium
CN111589127A
Mobile synchronization method, device and equipment of virtual character and storage medium
CN115770389A
Virtual object control method and device, computer equipment and storage medium
CN116943209A
State synchronization method and device, electronic equipment and storage medium
CN117085313A