Screen display method, and its apparatus, terminal, and computer program

JP2026076204A5Pending Publication Date: 2026-07-24TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
TENCENT TECHNOLOGY (SHENZHEN) CO LTD
Filing Date
2026-01-14
Publication Date
2026-07-24

AI Technical Summary

Technical Problem

In three-dimensional virtual environments, the self-character can obstruct the locked character, affecting the display effect of the screen when a virtual camera observes the locked character under user control.

Method used

A method and device that utilize a virtual tracking object to determine its position based on the self-character and locked character positions, ensuring the virtual camera's position and orientation are updated to maintain the tracking object closer to the camera than the locked character, avoiding occlusion and improving display rationality.

Benefits of technology

This approach ensures clear and rational presentation of both the self-character and locked character, enhancing the display effect by preventing the locked character from being obstructed by the self-character, thus improving the virtual camera's movement under character lock conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The display effect on the screen is improved by increasing the efficiency of the virtual camera's camera movement. [Solution] The method includes the steps of: displaying a first screen frame; determining the target position of a virtual tracking object based on the target position of the self character and the target position of the first lock character; determining the target position and target orientation of a virtual camera based on the target position of the virtual tracking object; obtaining the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame by interpolation based on the target position and target orientation of the virtual camera and the actual position and actual orientation of the virtual camera in the first screen frame; and generating and displaying a second screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application claims priority to a Chinese patent application filed on January 4, 2022, with application number 202210003178.6 and invention title "Screen Display Method, Device, Terminal, Storage Medium, and Program Product", and the entire content of the Chinese patent application is incorporated herein by reference.

[0002] Embodiments of this application relate to the technical fields of computers and the Internet, and particularly to screen display methods and their corresponding devices, terminals, and computer programs.

Background Art

[0003] Currently, some game applications provide a three-dimensional virtual environment, and virtual characters can perform various operations in this three-dimensional virtual environment under the control of users, thereby providing a more realistic game environment for users.

[0004] In related technologies, when a user locks a target virtual character in a three-dimensional virtual environment (hereinafter referred to as a "locked character"), the game application controls a virtual camera to observe the locked character with the virtual character controlled by the user himself (hereinafter referred to as the "self-character") as the visual focus, and presents the screen captured by this virtual camera to the user.

[0005] However, in such a method, it is easy for the self-character to block the locked character, which may affect the display effect of the screen.

Summary of the Invention

[0006] Embodiments of this application propose a screen display method, device, terminal, storage medium, and program product that can improve the rationality of camera movement of a virtual camera and thus improve the display effect of the screen. The technical solution is as follows.

[0007] One embodiment of the present application proposes a screen display method performed by a terminal device, and the method is as follows: A step of displaying a first screen frame, wherein the first screen frame is a screen captured by a virtual camera with a virtual tracking object in the 3D virtual environment as the visual focus, A step of determining the target position of the virtual tracking object based on the target position of the self-character and the target position of the first lock character, wherein the first lock character refers to the lock target corresponding to the self-character under character lock conditions, A step of determining the target position and target orientation of the virtual camera based on the target position of the virtual tracking object, wherein the distance between the target position of the virtual camera and the target position of the virtual tracking object is smaller than the distance between the target position of the virtual camera and the target position of the first lock character. The steps include obtaining the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame by interpolation, based on the target position and target orientation of the virtual camera, and the actual position ("actual position") and actual orientation ("actual orientation direction") of the virtual camera in the first screen frame, The process includes the steps of generating and displaying the second screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame.

[0008] One embodiment of the present application proposes a screen display method to be performed by a terminal device, and the method is as follows: The steps include displaying a first screen frame, wherein the first screen frame is a screen captured by a virtual camera, with a virtual tracking object in the 3D virtual environment as the visual focus, and The steps include: displaying a second screen frame in response to the movement of at least one of the self-character and a first lock character, based on a single-frame target position and a single-frame target orientation of the virtual camera in the second screen frame, wherein the single-frame target position and the single-frame target orientation are determined based on the target position and target orientation of the virtual camera, the target position and target orientation of the virtual camera are determined based on the target position of the virtual tracking object, the distance between the target position of the virtual camera and the target position of the virtual tracking object is less than the distance between the target position of the virtual camera and the target position of the first lock character, and the first lock character refers to the lock target corresponding to the self-character under the character lock state.

[0009] A screen display device is proposed in one embodiment of the present application, and the device is A screen display module configured to display a first screen frame, wherein the first screen frame is a screen captured by a virtual camera of the 3D virtual environment with a virtual tracking object in the 3D virtual environment as the visual focus, An object position determination module configured to determine the target position of the virtual tracking object based on the target position of its own character and the target position of a first lock character, wherein the first lock character refers to the lock target corresponding to the own character under character lock conditions, A camera position determination module configured to determine the target position and target orientation of a virtual camera based on the target position of the virtual tracking object, wherein the distance between the target position of the virtual camera and the target position of the virtual tracking object is smaller than the distance between the target position of the virtual camera and the target position of the first lock character, A single-frame position determination module is configured to obtain the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame by interpolation, based on the target position and target orientation of the virtual camera and the actual position and actual orientation of the virtual camera in the first screen frame. Includes, The screen display module is further configured to generate and display the second screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame.

[0010] A screen display device is proposed in one embodiment of the present application, and the device is A screen display module configured to display a first screen frame, wherein the first screen frame is a screen captured by a virtual camera of the 3D virtual environment with a virtual tracking object in the 3D virtual environment as the visual focus, and the screen display module includes The screen display module is further configured to display the second screen frame in response to the movement of at least one of the self-character and the first lock character, based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame, wherein the single-frame target position and single-frame target orientation are determined based on the target position and target orientation of the virtual camera, the target position and target orientation of the virtual camera are determined based on the target position of the virtual tracking object, the distance between the target position of the virtual camera and the target position of the virtual tracking object is smaller than the distance between the target position of the virtual camera and the target position of the first lock character, and the first lock character refers to the lock target corresponding to the self-character under the character lock state.

[0011] In one embodiment of the present application, a terminal device comprising a processor and memory is proposed, wherein a computer program is stored in the memory, and the above-described screen display method is realized when the computer program is loaded and executed by the processor.

[0012] In one embodiment of the present application, a computer-readable storage medium in which a computer program is stored is proposed, and the above-described screen display method is realized when the computer program is loaded and executed by a processor.

[0013] In one embodiment of the present application, a computer program product or computer program is proposed, which includes computer instructions stored in a computer-readable storage medium. The processor of a terminal device reads these computer instructions from the computer-readable storage medium and executes them, thereby executing the screen display method described above on the terminal device.

[0014] The technical solutions proposed in the embodiments of this application can bring about the following beneficial effects.

[0015] The virtual camera focuses on a virtual tracking object in a 3D virtual environment. Under character lock conditions, the virtual tracking object's position is determined based on the position information of the user's own character and the lock character. The virtual camera's position and orientation are then updated based on the virtual tracking object's position. By considering both the user's own character's position and the lock character's position when determining the virtual tracking object's position, occlusion of the lock character by the user's character is avoided, resulting in a more rational and accurate determined position for the virtual tracking object. Furthermore, the virtual camera ensures that the user's own character and the lock character are presented to the user more rationally and clearly in the image captured with the virtual tracking object as its visual focus. This improves the rationality of the virtual camera's movement under character lock conditions and enhances the display effect on the screen.

[0016] Furthermore, by maintaining the distance between the virtual camera's target position and the virtual tracking object's target position to be smaller than the distance between the virtual camera's target position and the first locked character's target position, the virtual tracking object will move closer to the virtual camera than the first locked character within the virtual camera's field of view. This avoids the first locked object obstructing the virtual camera's view, thus increasing the rationality of the virtual camera's camera movement under character lock conditions. [Brief explanation of the drawing]

[0017] [Figure 1] This is a schematic diagram showing a technical implementation environment according to one embodiment of this application. [Figure 2] This is a flowchart of a screen display method according to one embodiment of this application. [Figure 3] This is a schematic diagram illustrating the determination of the target position awaiting determination of a virtual tracking object according to one embodiment of this application. [Figure 4] This is a schematic diagram showing the back-enclosing angle region of a self-character according to one embodiment of this application. [Figure 5]It is a schematic diagram showing a screen captured with a virtual following object as a visual focus according to an embodiment of the present application. [Figure 6] It is a schematic diagram showing the rotation orbit where a virtual camera is located according to an embodiment of the present application. [Figure 7] It is a schematic diagram showing the determination of the target position and target orientation of a virtual camera according to an embodiment of the present application. [Figure 8] It is a schematic diagram showing the relationship between a first distance and a first interpolation coefficient according to an embodiment of the present application. [Figure 9] It is a schematic diagram showing the relationship between a second distance and a second interpolation coefficient according to an embodiment of the present application. [Figure 10] It is a schematic diagram showing the determination of the single-frame target orientation of a virtual camera according to an embodiment of the present application. [Figure 11] It is a flowchart showing the switching of a locked character under a character lock state according to an embodiment of the present application. [Figure 12] It is a schematic diagram showing the determination of a pre-lock character and its mark according to an embodiment of the present application. [[ID=2^{2}]] [Figure 13] It is a flowchart showing the update process of a virtual camera in a non-character lock state according to an embodiment of the present application. [Figure 14] It is a schematic diagram showing the update process of a virtual camera in a non-character lock state according to an embodiment of the present application. [Figure 15] It is a flowchart showing the update process of a virtual camera according to an embodiment of the present application. [Figure 16] It is a flowchart of a screen display method according to another embodiment of the present application. [Figure 17] It is a block diagram of a screen display device according to an embodiment of the present application. [Figure 18] It is a block diagram of a terminal device according to an embodiment of the present application.

Modes for Carrying Out the Invention

[0018] Before introducing the embodiments of this application, we will first explain the nouns referred to in this application.

[0019] 1. Virtual Environment A virtual environment is an environment displayed (or provided) when a client of an application (e.g., a game application) runs on a terminal device (also called a terminal). This virtual environment refers to the environment that virtual objects construct for their activities (e.g., playing games, performing tasks, etc.). For example, this virtual environment may be a virtual house, a virtual island, a virtual map, etc. This virtual environment may be a simulation environment of the real world, a semi-simulated / semi-fictional environment, or a purely fictional environment. In the embodiments of this application, the virtual environment is three-dimensional, i.e., a space composed of three dimensions: length, width, and height, and is therefore sometimes referred to as a "three-dimensional virtual environment."

[0020] 2. Virtual Characters A virtual character refers to a character controlled by a user account within an application. Taking a game application as an example, the virtual character is a game character controlled by the user account within the game application. A virtual character may be in human form, animal, anime, or other form, and is not limited to these in the embodiments of this application. In the embodiments of this application, since the virtual character is similarly three-dimensional, it is sometimes referred to as a "three-dimensional virtual character."

[0021] Different game applications may have different controls over which virtual characters can perform actions. For example, in shooting games, virtual characters can perform actions such as striking, shooting, throwing virtual items, running, jumping, and releasing skills, all under the control of the user account.

[0022] Of course, virtual characters can be presented to users and corresponding functions can be provided to virtual characters in applications other than game applications. Examples include AR (Augmented Reality) applications, social applications, and interactive entertainment applications, and the embodiments of this application are not limited to these. Furthermore, different applications will have different forms of virtual characters and corresponding functions, which can be pre-configured according to actual needs, and the embodiments of this application are not limited to these.

[0023] Referring to Figure 1, a schematic diagram of a technical implementation environment according to one embodiment of this application is shown. This technical implementation environment includes a terminal 10 and a server 20.

[0024] Terminal 10 may be an electronic device such as a mobile phone, tablet computer, game host, multimedia playback device, PC (Personal Computer), in-car terminal, or smart TV. Terminal 10 may have a client for the target application installed, and the target application refers to an application capable of providing a 3D virtual environment, such as a game application, simulation application, or entertainment application. Exemplary examples of game applications capable of providing a 3D virtual environment include, but are not limited to, applications that support 3D action games (3D Action Games, abbreviated as "3D ACT"), 3D shooting games, and 3D MOBA (Multiplayer Online Battle Arena) games.

[0025] Server 20 is intended to provide background services to clients of the target application on terminal 10. For example, server 20 may be a background server for the target application. Server 20 may be a single server, a group of servers, or a cloud computing service center.

[0026] Terminal 10 and server 20 can communicate with each other via network 30. This network 30 may be a wired network or a wireless network.

[0027] Referring to Figure 2, a flowchart of a screen display method according to one embodiment of this application is shown. The entity executing each step in this method may be terminal 10 in the technical implementation environment shown in Figure 1, or for example, the entity executing each step may be a client of a target application installed and executed on terminal 10. In the following embodiment of the method, for the sake of explanation, the entity executing each step will be described as a "client". This method includes the following steps (210-250).

[0028] Step 210: The first screen frame is displayed, which is a screen showing the 3D virtual environment captured by a virtual camera with a virtual tracking object in the 3D virtual environment as the visual focus.

[0029] When a client presents content in a 3D virtual environment to a user, it displays a screen frame, which is an image of the 3D virtual environment captured by a virtual camera. For example, the first screen frame refers to an image of the 3D virtual environment captured by a virtual camera at the present time. The 3D virtual environment includes virtual characters, such as a virtual character controlled by the user (referred to as a "self-character" in the embodiments of this application), or a virtual character controlled by another user or system (e.g., an AI (Artificial Intelligence)). Optionally, the 3D virtual environment may also include other virtual objects, such as a virtual house, virtual loading equipment, or virtual trees, and is not limited to these in the embodiments of this application. In the embodiments of this application, a screen frame can be generated using virtual camera technology. In other words, the client can observe the 3D virtual environment using a virtual camera as the viewing viewpoint and acquire a screen frame by capturing the 3D virtual environment in real time (or at predetermined time intervals), and the content of the screen frame changes in accordance with the change in the position of the virtual camera.

[0030] In the embodiments of this invention, the virtual camera focuses on a virtual tracking object in a three-dimensional virtual environment, and the virtual tracking object is an invisible object. For example, the virtual tracking object is neither a virtual character nor a virtual item, nor does it have an outline; it can be considered a single point in the three-dimensional virtual environment. In the three-dimensional virtual environment, the position of the virtual tracking object changes in response to changes in the position of its own character (which may optionally include other virtual characters). The virtual camera moves in accordance with the virtual tracking object (e.g., in position and orientation), capturing content around the virtual tracking object in the three-dimensional virtual environment and displaying it in the screen frame for the user to see.

[0031] Step 220: Determine the target position of the virtual follower object based on the target position of the self-character and the target position of the first lock character, where the first lock character refers to the lock target corresponding to the self-character under character lock conditions.

[0032] A character lock state refers to a state in which the user's own character locks onto another virtual character, which may be a virtual character controlled by another user or system. Under character lock state, the position and orientation of the virtual camera must change in accordance with the changes in the positions of the user's own character and the locked character. This ensures that the screen frame captured by the virtual camera includes both the user's own character and the locked character as much as possible, allowing the user to observe both characters within the screen frame.

[0033] In the embodiments of this application, since the visual focus of the virtual camera is the virtual tracking object, the position and orientation of the virtual camera change in accordance with the change in the position of the virtual tracking object, while the position of the virtual tracking object changes in accordance with the change in the positions of the self-character and the lock character. The lock character is the lock target corresponding to the self-character. In some embodiments, the lock character is marked and displayed, and operations corresponding to the self-character act on the lock character. Optionally, the first lock character may be any one or more other virtual characters that the self-character locks onto.

[0034] In some embodiments, when describing the virtual camera update process under a character lock state, taking the example that the lock target of the self-character is the first lock character, step 220 may include the following few substeps.

[0035] 1. The target position of the player's own character is set as the follow target, and the target position of the virtual follow object is determined on the target line, with the target line perpendicular to the line connecting the player's own character's target position and the target position of the first locked character.

[0036] Under character lock conditions, on the one hand, the virtual follower object still needs to move in accordance with the movement of its own character, using the character as its follower target, and on the other hand, in order to display the currently locked first character in the screen frame, the target position of the virtual follower object must also take into account the target position of the first locked character.

[0037] In the embodiments of this application, the target position can be understood as a planned position, referring to a required or expected destination. For example, the target position of the user character refers to the required or expected destination of the user character (e.g., the next frame corresponding to the first screen frame), and the target position of the first lock character refers to the required or expected destination of the first lock character. The target position of the user character can be determined based on control operations performed on the user character by the user. The target position of the first lock character can be determined based on control operations performed on the first lock character by the system or another user.

[0038] As shown in Figure 3, a schematic diagram illustrating the determination of the target position awaiting determination for the virtual follower object 31 is provided as an example. In Figure 3, the target position of the self-character 32 is represented by point A, the target position of the first lock character 33 is represented by point B, the target line CD is perpendicular to the line AB, and the target position awaiting determination for the virtual follower object 31 is determined on the target line CD, for example, as shown by point O in Figure 3. In Figure 3, the target line CD is a line perpendicular to the line AB and passing through point A; in other words, the target line is perpendicular to the line connecting the target position of the self-character 32 (point A) and the target position of the first lock character 33 (point B), and the target line passes through the target position of the self-character 32 (point A). In some other embodiments, the target line CD may be a line perpendicular to the line AB but not passing through point A.

[0039] 2. If the target position awaiting determination for the virtual tracking object satisfies the conditions, the target position awaiting determination for the virtual tracking object is determined as the target position for the virtual tracking object.

[0040] 3. If the target position of the virtual tracking object awaiting determination does not meet the conditions, the target position of the virtual tracking object is obtained by adjusting the target position of the virtual tracking object awaiting determination.

[0041] In the embodiments of this application, after determining the target position awaiting determination for the virtual tracking object, it is necessary to determine whether the target position awaiting determination satisfies the conditions. If the conditions are met, the target position awaiting determination is determined as the target position of the virtual tracking object. If the conditions are not met, it is necessary to adjust the target position awaiting determination for the virtual tracking object to obtain the target position of the virtual tracking object, and the target position obtained through this adjustment satisfies the above conditions. The above conditions are set to make the target position of the virtual tracking object an appropriate position. Specifically, when the virtual camera captures the virtual tracking object with the virtual tracking object as the visual focus, both the user's character and the first lock object can be captured in the screen, and there is no overlap in the positions of the user's character and the first lock object, thereby improving the screen display effect.

[0042] Optionally, the above condition includes the condition that the offset distance between the target position of the virtual tracking object and the target position of the self-character is less than or equal to the maximum offset amount. If the offset distance between the target position of the virtual tracking object and the target position of the self-character is greater than the maximum offset amount, the target position of the virtual tracking object is obtained by adjusting the target position of the virtual tracking object based on the maximum offset amount, so that the offset distance between the target position of the virtual tracking object and the target position of the self-character is less than or equal to the maximum offset amount. Optionally, the maximum offset amount may be a value greater than 0. Optionally, the maximum offset amount may be a fixed value or a value dynamically determined according to the position of the virtual camera. For example, as shown in Figure 3, if the length of line segment CA is the maximum offset amount, then if the length of line segment OA is greater than the length of line segment CA, point C is determined as the target position of the virtual tracking object 31, while if the length of line segment OA is less than or equal to the length of line segment CA, point O is determined as the target position of the virtual tracking object 31. The method described above avoids situations where the virtual character is not included in the screen frame captured by the virtual camera due to the distance between the virtual tracking object and the character being too great, thereby improving the rationality of the virtual camera's movement.

[0043] Optionally, the above condition further includes the condition that the offset distance between the target position of the virtual tracking object and the target position of the self-character is greater than the minimum offset amount. If the offset distance between the target position of the virtual tracking object and the target position of the self-character is less than or equal to the minimum offset amount, the target position of the virtual tracking object is obtained by adjusting the target position of the virtual tracking object based on this minimum offset amount, and the offset distance between the target position of the virtual tracking object and the target position of the self-character is greater than the minimum offset amount. Optionally, the value of the minimum offset amount may be 0 or greater than 0, and is not limited to these in the embodiments of this application. Also, the minimum offset amount is smaller than the maximum offset amount described above. Optionally, the minimum offset amount may be a fixed value or a value dynamically determined according to the position of the virtual camera. For example, as shown in Figure 3, if points O and A overlap, the target position of the virtual tracking object 31 is obtained by moving point O by a predetermined distance in the direction of point C, while if points O and A do not overlap, point O is determined as the target position of the virtual tracking object 31. The method described above avoids situations where the first lock object is obscured by the character in the screen frame captured by the virtual camera, due to the virtual tracking object being located on the line connecting the character and the first lock object, thereby increasing the rationality of the virtual camera's movement.

[0044] Optionally, the above conditions further include the fact that the target position of the virtual follow object awaiting determination lies within the back angle region of the self-character. If the target position of the virtual follow object awaiting determination lies outside the back angle region of the self-character, the target position of the virtual follow object is obtained by adjusting the target position of the virtual follow object awaiting determination lies within the back angle region of the self-character, so that the target position of the virtual follow object lies within the back angle region of the self-character. Here, the back angle region of the self-character refers to the corner region whose central axis is a straight line passing through the target position of the self-character and the target position of the first lock object, and which points in the opposite direction from the first lock object. In the embodiments of this application, the size of the back angle region is not limited and may be, for example, 90 degrees, 120 degrees, 150 degrees, 180 degrees, etc., and it can be set according to the actual requirements. As shown in Figure 4, a schematic diagram of the back angle region is shown exemplarily. In Figure 4, the target position of the self-character 32 is represented by point A, the target position of the first lock character 33 is represented by point B, and the back angle region of the self-character 32 is represented by angle α. If the target position O of the virtual tracking object 31 awaiting determination is outside angle α, the target position of the virtual tracking object 31 is obtained by moving point O to the edge of angle α. On the other hand, if the target position O of the virtual tracking object 31 awaiting determination is inside angle α, point O is determined as the target position of the virtual tracking object 31. By the method described above, it is ensured that the self-character is closer to the virtual camera than the first lock character, thereby allowing the user to intuitively distinguish between the self-character and the first lock character through the display effect of near-large and far-small.

[0045] As shown in Figure 5, after determining the target position of a virtual tracking object that satisfies the conditions using the method described above, an example screen is shown of the 3D virtual environment captured using a virtual camera with the virtual tracking object as the visual focus. As is clear from Figure 5, on the one hand, both the self character 32 and the first lock character 33 are present in the screen, and the self character 32 does not obstruct the first lock character 33, while on the other hand, the self character 32 is closer to the virtual camera than the first lock character 33, and the size of the self character 32 is larger than the size of the first lock character 33, thereby allowing the user to distinguish between these two characters more intuitively.

[0046] Step 230: Determine the target position and target orientation of the virtual camera based on the target position of the virtual tracking object, and ensure that the distance between the virtual camera's target position and the virtual tracking object's target position is less than the distance between the virtual camera's target position and the target position of the first lock character.

[0047] Once the target position of the virtual tracking object is determined, the target position and target orientation of the virtual camera can be determined based on the target position of the virtual tracking object. In the embodiment of this application, the distance between the target position of the virtual camera and the target position of the virtual tracking object is smaller than the distance between the target position of the virtual camera and the target position of the first lock character. As a result, within the field of view of the virtual camera, the virtual tracking object is closer to the virtual camera than the first lock character, the field of view obstruction of the virtual camera by the first lock object is avoided, and the rationality of the camera movement of the virtual camera is increased.

[0048] In some embodiments, step 230 includes the following few substeps.

[0049] 1. The rotational trajectory of the virtual camera is determined based on the target position of the virtual tracking object, and the plane on which the rotational trajectory is located is parallel to the reference plane of the 3D virtual environment, and the central axis of the rotational trajectory passes through the target position of the virtual tracking object.

[0050] In the embodiments of this application, the rotational trajectory refers to the movement trajectory of the virtual camera, and the virtual camera can automatically move along the rotational trajectory to follow the virtual object. The rotational trajectory may be circular, elliptical, or the like, and is not limited to these in the embodiments of this application. As shown in Figure 6, the target position of the virtual tracking object 31 is represented by point O, and the target position of the self-character 32 is represented by point A. The target position of the virtual tracking object 31 (i.e., point O) and the target position of the self-character 32 (i.e., point A) are located within the reference plane of the 3D virtual environment. The plane on which the rotational trajectory 35 on which the virtual camera 34 is located is parallel to the reference plane of the 3D virtual environment, and the central axis 36 of the rotational trajectory 35 passes through the target position of the virtual tracking object 31 (i.e., point O). Here, the reference plane of the 3D virtual environment may be the horizontal plane of the 3D virtual environment (for example, the ground), the virtual objects in the 3D virtual environment are on the reference plane, and the plane on which the rotational trajectory 35 of the virtual camera 34 is located is also on the reference plane, thereby enabling the content in the 3D virtual environment to be photographed at a predetermined planar viewing angle.

[0051] 2. Based on the target position of the virtual tracking object and the target position of the first lock character, the target position and target orientation of the virtual camera on the rotational trajectory are determined.

[0052] The target position of the virtual camera refers to the theoretically required or expected destination of the virtual camera, the target orientation of the virtual camera refers to the theoretically required or expected orientation of the virtual camera, the single-frame target position of the virtual camera below refers to the practically required or expected destination of the virtual camera, which is for transitioning the virtual camera from its current position to the target position, and the single-frame target orientation of the virtual camera below refers to the practically required or expected orientation of the virtual camera, which is for transitioning the virtual camera from its current orientation to the target orientation. If the target position of the first lock character and the target position of the virtual tracking object are defined within the reference plane of the 3D virtual environment, the projection point of the virtual camera's target position on the reference plane of the 3D virtual environment lies on the straight line where the target position of the first lock character and the target position of the virtual tracking object are located, and the target position of the virtual tracking object is located between the above projection point and the target position of the first lock character.

[0053] As shown in Figure 7, the target position of the virtual tracking object 31 is represented by point O, the target position of the self-character 32 is represented by point A, the target position of the first lock character 33 is represented by point B, and on the rotational trajectory 35, point K can be uniquely determined, and the projection point of this point K on the reference plane of the 3D virtual environment is denoted as point K', this point K' lies on the line OB, and point O is located between point K' and point B. This point K is determined as the target position of the virtual camera 34, and the direction of radiation KO is determined as the target direction of the virtual camera 34. For the projection point K' of point K on the reference plane, a line is created that passes through point K and is perpendicular to the reference plane, and the intersection point of this line and the reference plane is the projection point K'. Based on the target position of the virtual tracking object and the target position of the first lock character, the target position of the virtual camera is determined on the rotational trajectory corresponding to the virtual camera, thereby making the target position of the virtual camera more rational and increasing the rationality of the camera movement of the virtual camera.

[0054] Step 240: Based on the target position and target orientation of the virtual camera, and the actual position and orientation of the virtual camera in the first screen frame, the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame are obtained by interpolation.

[0055] After determining the target position of the virtual camera, the first interpolation algorithm combines this with the actual position of the virtual camera in the first screen frame to obtain the single-frame target position of the virtual camera in the second screen frame. The purpose of this first interpolation algorithm is to gradually (or smoothly) bring the position of the virtual camera closer to the target position of the virtual camera.

[0056] Similarly, after determining the target orientation of the virtual camera, the actual orientation of the virtual camera in the first screen frame is combined with the second interpolation algorithm to obtain the single-frame target orientation of the virtual camera in the second screen frame. The purpose of this second interpolation algorithm is to gradually (or smoothly) bring the orientation of the virtual camera closer to the target orientation of the virtual camera.

[0057] In some embodiments, the process for determining the single-frame target position of the virtual camera in the second screen frame is as follows: A first interpolation coefficient is determined based on a first distance, where the first distance is the distance between the first lock character and the self-character, and the first interpolation coefficient is used to determine the amount of position adjustment for the virtual camera. Then, the single-frame target position of the virtual camera in the second screen frame is determined based on the target position of the virtual camera, the actual position of the virtual camera in the first screen frame, and the first interpolation coefficient.

[0058] Selectively, the first interpolation coefficient shows a positive correlation with the first distance. Exemplarily, as shown in Figure 8, a relationship curve 81 between the first distance and the first interpolation coefficient is shown. According to this relationship curve 81, the first interpolation coefficient can be determined based on the first distance. For example, the first interpolation coefficient can take values ​​between [0,1]. Selectively, the distance between the target position of the virtual camera and the actual position of the virtual camera in the first screen frame is calculated, and this distance is multiplied by the first interpolation coefficient to obtain a position adjustment amount. Then, the actual position of the virtual camera in the first screen frame is translated in the direction of the target position of the virtual camera by the above position adjustment amount to obtain the single-frame target position of the virtual camera in the second screen frame. As described above, by determining the interpolation coefficient for the virtual camera's position, when the distance between the user's character and the locked character changes significantly, the change in the virtual camera's displacement also increases accordingly. Conversely, when the distance between the user's character and the locked character changes small, the change in the virtual camera's displacement also decreases accordingly. This ensures that both the user's character and the locked character remain as close to the field of view as possible, and that the screen content changes smoothly.

[0059] In some embodiments, the process for determining the single-frame target orientation of the virtual camera in the second screen frame is as follows: a second interpolation coefficient is determined based on a second distance, where the second distance is the distance between the first lock character and the central axis of the screen, and the second interpolation coefficient is used to determine the amount of orientation adjustment of the virtual camera. Then, the single-frame target orientation of the virtual camera in the second screen frame is determined based on the target orientation of the virtual camera, the actual orientation of the virtual camera in the first screen frame, and the second interpolation coefficient.

[0060] Selectively, the second interpolation coefficient shows a positive correlation with the second distance. Exemplarily, a schematic diagram of the relationship between the second distance and the second interpolation coefficient is shown as in Figure 9. In Figure 9, the self character is represented by 32, the first lock character by 33, and the screen's central axis by 91. For example, the second interpolation coefficient can take values ​​between [0,1]. The smaller the distance between the first lock character 33 and the screen's central axis 91, the closer the second interpolation coefficient is to 0, while the larger the distance between the first lock character 33 and the screen's central axis 91, the closer the second interpolation coefficient is to 1. Selectively, as shown in Figure 10, the angle θ between the target orientation of the virtual camera 34 and the actual orientation of the virtual camera 34 in the first screen frame is calculated, and this angle θ is multiplied by the second interpolation coefficient to obtain an orientation adjustment amount γ. Then, the actual orientation is shifted toward the target orientation direction by the orientation adjustment amount γ to obtain the single-frame target orientation of the virtual camera 34 in the second screen frame. As described above, by determining the interpolation coefficient for the orientation of the virtual camera, when the locked character is close to the central axis of the screen, the change in orientation becomes small, and even if the locked character frequently experiences sudden displacements, the virtual camera will not shake significantly. On the other hand, when the locked character is far from the central axis of the screen, the change in orientation becomes large, and even if the locked character dashes out of the field of view at high speed, the virtual camera can respond in a timely manner, ensuring that the locked character does not leave the field of view.

[0061] Step 250: Generate and display the second screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame.

[0062] Once the client has determined the single-frame target position and orientation of the virtual camera in the second screen frame, it can control the virtual camera to position itself according to the single-frame target position and orientation, capture the 3D virtual environment with the virtual tracking object in the 3D virtual environment as the visual focus to acquire the second screen frame, and then display the second screen frame.

[0063] Selectively, the second screen frame is the next screen frame after the first screen frame, and the second screen frame is displayed after the display of the first screen frame is complete. Exemplarily, if the first screen frame is the screen frame at the current time, the second screen frame is the screen frame at the next time, the single-frame target position is the true position of the virtual camera at the next time, and the single-frame target direction is the true orientation of the virtual camera at the next time.

[0064] Furthermore, in the embodiments of this application, the screen switching process under character lock conditions was explained using the switching process from the first screen frame to the second screen frame as an example. However, it should be understood that the switching process between any two screen frames under character lock conditions can be achieved according to the switching process from the first screen frame to the second screen frame described above.

[0065] To summarize the above, in the invention described in this application, a virtual tracking object in a 3D virtual environment is used as the visual focus of the virtual camera. Under character lock conditions, the position information of the virtual tracking object is determined based on the position information of the user's own character and the position information of the locked character. Then, the position and orientation of the virtual camera are updated based on the position information of the virtual tracking object. When determining the position information of the virtual tracking object, both the position information of the user's own character and the position information of the locked character are taken into consideration. This avoids occlusion of the locked character by the user's own character, resulting in more rational and accurate determined position information of the virtual tracking object. Furthermore, it ensures that the user's own character and the locked character are presented to the user more rationally and clearly in the screen captured by the virtual camera with the virtual tracking object as the visual focus. This increases the rationality of the virtual camera's movement under character lock conditions and improves the display effect of the screen.

[0066] Furthermore, by maintaining the distance between the virtual camera's target position and the virtual tracking object's target position to be smaller than the distance between the virtual camera's target position and the first locked character's target position, the virtual tracking object will be closer to the virtual camera than the first locked character within the virtual camera's field of view. This avoids the first locked object obstructing the virtual camera's view, thus increasing the rationality of the virtual camera's camera movement under character lock conditions.

[0067] In some embodiments, as shown in Figure 11, embodiments of the present application can also support switching the locked character under a character-locked state. This process includes several steps (1110-1130) as follows.

[0068] Step 1110: Under character lock-in conditions, control the virtual camera to rotate around the virtual tracking object in response to a field of view adjustment operation on the character itself.

[0069] Under character lock conditions, it is assumed that the currently locked character is the first locked character. The user can switch the locked character by performing a field of view adjustment operation on their own character, thereby controlling the virtual camera to rotate around the virtual tracking object on its rotation trajectory. Here, the rotation trajectory of the virtual camera can be found in the description of the embodiment above and will not be explained further here. The field of view adjustment operation is used to adjust the observation field of view of the virtual camera, and for example, the rotation direction and rotation speed of the virtual camera can be determined by the field of view adjustment operation. Taking the field of view adjustment operation as a sliding operation on the screen (e.g., a non-button area) with the user's finger as an example, the rotation direction of the virtual camera can be determined based on the direction of this sliding operation, and the rotation speed of the virtual camera can be determined based on the sliding speed or sliding distance of this sliding operation.

[0070] In some embodiments, the client switches from a character-locked state to a non-character-locked state in response to a field-of-view adjustment operation on its own character while in a character-locked state, while in a non-character-locked state, it controls the virtual camera to rotate around a virtual tracking object based on the field-of-view adjustment operation.

[0071] Selectively, there are virtual cameras corresponding to the character-locked state and the non-character-locked state. For convenience of explanation, the virtual camera used under the character-locked state will be referred to as the first virtual camera, and the virtual camera used under the non-character-locked state will be referred to as the second virtual camera. Under the character-locked state, the first virtual camera is in an active state, and the second virtual camera is in an inactive state. The client can update the position and orientation of the first virtual camera according to the method procedure described in the embodiment shown in Figure 2 above. Under the character-locked state, the client, in response to a field-of-view adjustment operation on its own character, switches from the character-locked state to the non-character-locked state, controls the currently used virtual camera to switch from the first virtual camera to the second virtual camera, and controls the second virtual camera to rotate around the virtual tracking object based on the field-of-view adjustment operation. Selectively, the size of the rotation trajectories of the first and second virtual cameras and their positions relative to the reference plane are the same, thereby ensuring a seamless switch between the first and second virtual cameras, so that the user does not perceive the camera switching process from the screen, improving the efficiency of virtual camera switching and the user experience.

[0072] Step 1120: During the rotation process, the pre-lock character in the 3D virtual environment is determined and the third screen frame is displayed, which shows the pre-lock character and its corresponding pre-lock mark.

[0073] During the rotation of the virtual camera, the first locked character becomes unlocked, and at this point the client is in a non-character-locked state, also known as the pre-locked state. In the pre-locked state, the client determines the pre-locked character in the 3D virtual environment based on information such as the position of each virtual character in the 3D virtual environment and the position and orientation of the virtual camera. For example, the client determines the visual focus of the virtual camera (i.e., the virtual tracking object) based on the position and orientation of the virtual camera, and determines the virtual object closest to this visual focus as the pre-locked character. Here, a pre-locked character refers to a virtual character that will soon be locked or has the potential to be locked. At the same time, if a pre-locked character exists in the pre-locked state, a pre-lock mark corresponding to that pre-locked character will be displayed on the screen frame shown to the client to inform the user which virtual character is currently pre-locked.

[0074] Step 1130: In response to the lock confirmation operation for the pre-lock character, the pre-lock character is determined to be the second lock character, and the fourth screen frame is displayed. The fourth screen frame displays the second lock character and its corresponding lock mark.

[0075] A lock confirmation operation refers to a user-triggered operation to determine a pre-lock character as the lock character. For example, if the field of view adjustment operation is still a sliding operation on the screen by the user's finger, then when the user's finger leaves the screen and the sliding operation is complete, this completed sliding operation is determined as the lock confirmation operation. The client can then determine the corresponding pre-lock character as the second lock character when the sliding operation is completed.

[0076] Selectively, after the client determines the pre-lock character as the second lock character, it switches from a non-character-locked state (or pre-locked state) to a character-locked state, and under the character-locked state, updates the position and orientation of the virtual camera according to the method procedure described in the embodiment shown in Figure 2 above.

[0077] Selectively, there are virtual cameras corresponding to the character-locked state and the non-character-locked state. In this case, the client controls the switching from the non-character-locked state (or pre-locked state) to the character-locked state, and at the same time switches the currently used virtual camera from the second virtual camera to the first virtual camera, and then updates the position and orientation of the first virtual camera according to the method procedure described in the embodiment shown in Figure 2 above.

[0078] Furthermore, the lock mark is a mark used to distinguish a locked character from other unlocked characters. The lock flag may be different from the prelock flag, so that the user can distinguish whether a virtual character is a prelock character or a locked character by a different mark.

[0079] Exemplary, as shown in Figure 12, under the character lock state shown in part (a) of Figure 12, the first lock character 33 is locked by the self-character 32, and a lock mark 41 corresponding to the first lock character 33 is displayed on the screen frame. At this time, the user can trigger a field of view adjustment to the self-character 32 by performing a slide operation on the screen. During the slide operation, the client controls the virtual camera to rotate around the virtual tracking object based on information such as the direction and displacement of the slide operation, and during the rotation process, the client predicts the pre-lock character in the 3D virtual environment. As shown in part (b) of Figure 12, after determining the pre-lock character 38, the client displays a pre-lock mark 42 corresponding to this pre-lock character 38 on the screen frame, so that the user can know which virtual character is currently in a pre-lock state based on this pre-lock mark 42. If the current pre-lock character 38 matches the user's expectations, the user can stop the slide operation and, for example, lift their finger from the screen. At this point, the client determines the pre-lock character 38 as the second lock character and displays a lock mark 41 corresponding to this second lock character on the screen frame, as shown in part (c) of Figure 12.

[0080] In the embodiments of this application, the switching of the locked character is further achieved by supporting field adjustment to the user's own character while the character is locked. During the switching process, the client automatically predicts the pre-locked character and displays a pre-lock mark corresponding to this pre-locked character, thereby allowing the user to intuitively and clearly observe which virtual character is currently in a pre-locked state, and to switch the locked character accurately and efficiently.

[0081] In some embodiments, as shown in Figure 13, the virtual camera update process under non-character-locked conditions includes the following steps (1310-1350).

[0082] Step 1310: Under non-character-locked conditions, the position of the virtual tracking object in the fifth screen frame is obtained by updating the position of the virtual tracking object by interpolation, using the self-character as the tracking target.

[0083] In a non-character-locked state, the virtual camera's visual focus remains on the virtual tracking object. Since there is no locked character at this time, only the position changes of the self-character need to be considered when updating the position of the virtual tracking object, and it is unnecessary to consider the position changes of the locked character. Optionally, in a non-character-locked state, a third interpolation algorithm is used to determine the single-frame target position of the virtual tracking object. This third interpolation algorithm aims to make the virtual tracking object smoothly follow the self-character.

[0084] Selectively, under non-character-locked conditions, a third interpolation coefficient is determined based on a third distance, where the third distance refers to the distance between the character and the virtual tracking object, and the third interpolation coefficient is used to determine the position adjustment amount of the virtual tracking object. Here, the third interpolation coefficient shows a positive correlation with the third distance. Then, based on the actual position of the character in the first screen frame, the actual position of the virtual tracking object in the first screen frame, and the third interpolation coefficient, the single-frame target position of the virtual tracking object in the fifth screen frame is determined. Exemplarily, the third interpolation coefficient can also take a value between [0,1], and the distance between the actual position of the character in the first screen frame and the actual position of the virtual tracking object in the first screen frame is calculated, this distance is multiplied by the third interpolation coefficient to obtain the position adjustment amount, and then the actual position of the virtual tracking object in the first screen frame is translated in the direction of the character by the above position adjustment amount to obtain the single-frame target position of the virtual tracking object in the fifth screen frame. The fifth screen frame may be the next screen frame after the first screen frame. As described above, when the user's own character is far from the virtual tracking object, the tracking speed of the virtual tracking object increases, while when the user's own character is close to the virtual tracking object, the tracking speed of the virtual tracking object decreases. Because the virtual tracking object slowly follows the user's character in the 3D virtual environment, even if the user's own character experiences irregular displacement or significant positional misalignment with other virtual characters, the virtual camera can move smoothly, improving the rationality of the virtual camera's camera movement in the unlocked character state.

[0085] Step 1320: Determine the single-frame target position of the virtual camera in the fifth screen frame based on the single-frame target position of the virtual tracking object in the fifth screen frame.

[0086] If there is a single-frame target position for the virtual tracking object in the fifth screen frame, the single-frame target position of the virtual camera in the fifth screen frame can be determined based on the default positional relationship between the virtual camera and the virtual tracking object.

[0087] For example, as shown in Figure 14, under non-character-locked conditions, the position of the virtual tracking object 31 is updated by interpolation using the self-character 32 as the tracking target to obtain the single-frame target position of the virtual tracking object 31. Then, based on the single-frame target position of the virtual tracking object 31, the single-frame target position of the virtual camera 34 is determined.

[0088] Step 1330: If no field of view adjustment operation is obtained for the character itself, the actual orientation of the virtual camera in the first screen frame is determined as the single-frame target orientation of the virtual camera in the fifth screen frame.

[0089] In a non-character-locked state, if the user does not perform a field-of-view adjustment operation on their own character to adjust the orientation of the field of view, the client maintains the orientation of the virtual camera from the previous frame.

[0090] Step 1340: If a field of view adjustment operation is obtained for the character itself, the single-frame target orientation of the virtual camera in the fifth screen frame is obtained by adjusting the actual orientation of the virtual camera in the first screen frame based on the field of view adjustment operation.

[0091] When a user performs a field of view adjustment operation on their own character while not character-locked, the client needs to update the virtual camera's orientation. Optionally, the client updates the virtual camera's orientation based on the field of view adjustment operation. For example, if the field of view adjustment operation is a slide operation on the screen, the client can determine the direction and angle of the virtual camera's orientation adjustment based on information such as the direction and displacement of that slide operation, and then combine this with the orientation from the previous frame to determine the target orientation for the next frame.

[0092] Step 1350: Generate and display the fifth screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the fifth screen frame.

[0093] Once the client has determined the single-frame target position and orientation of the virtual camera in the fifth screen frame, it can control the virtual camera to position itself according to the single-frame target position and orientation, capture the 3D virtual environment with the virtual tracking object in the 3D virtual environment as the visual focus to acquire the fifth screen frame, and then display that fifth screen frame.

[0094] In the embodiments of this application, the virtual tracking object moves smoothly following the user's character in a non-character-locked state, and the virtual camera is controlled to capture the virtual tracking object as the visual focus, thereby acquiring the screen. Because the virtual tracking object slowly follows the user's character in the 3D virtual environment, even if the user's character experiences irregular displacement or significant positional misalignment with other virtual characters, the virtual camera can move smoothly, avoiding phenomena such as violent shaking of the screen content and improving the user's viewing experience.

[0095] The proposed technology of this application will be outlined below, with reference to Figure 15.

[0096] As shown in Figure 15, once the virtual camera update begins, the client first determines whether or not it is in a character-locked state. If it is in a character-locked state, it determines whether or not the user has performed a field-of-view adjustment operation while in the character-locked state. If the user has not performed a field-of-view adjustment operation while in the character-locked state, the client determines the target position of the virtual tracking object based on the target position of its own character and the target position of the first locked character. Next, it determines whether the offset distance between the target position of the virtual tracking object and the target position of its own character exceeds the maximum offset amount. If it exceeds the maximum offset, it adjusts the target position of the virtual tracking object; on the other hand, if it does not exceed the maximum offset, it maintains the position and orientation of the virtual camera. Furthermore, it determines whether or not the target position of the virtual tracking object is outside the back angle region of its own character. If it is outside the back angle region, it adjusts the target position of the virtual tracking object; on the other hand, if it is inside the back angle region, it determines the target position and target orientation of the virtual camera based on the target position of the virtual tracking object. Subsequently, the single-frame target position and single-frame target orientation of the virtual camera are obtained by interpolation based on the target position and target orientation of the virtual camera, and the current actual position and orientation of the virtual camera. In this way, the virtual camera update is completed under the character lock state.

[0097] Under character lock conditions, when the user performs a field of view adjustment, the client determines the pre-lock character by controlling the virtual camera to rotate around the virtual tracking object. In this way, the virtual camera update is completed under pre-lock conditions.

[0098] In a non-character-locked state, the position of the virtual tracking object is updated by interpolation, using the user's own character as the tracking target. Then, it is determined whether or not a field-of-view adjustment operation has been performed by the user. If a field-of-view adjustment operation has been performed, the single-frame target orientation is determined based on the field-of-view adjustment operation. On the other hand, if a field-of-view adjustment operation has not been performed, the current actual orientation of the virtual camera is determined as the single-frame target orientation. In this way, the virtual camera update is completed in a non-character-locked state.

[0099] During client execution, the virtual camera's position and orientation must be updated every frame, and screen frames are captured and displayed to the user by capturing the 3D virtual environment at the visual focus of the virtual tracking object based on the updated position and orientation.

[0100] Referring to Figure 16, a flowchart of a screen display method according to another embodiment of this application is shown. The entity executing each step of this method may be terminal 10 in the technical implementation environment shown in Figure 1, or for example, the entity executing each step may be a client of a target application installed and executed on terminal 10. In the following embodiment of the method, for the sake of explanation, the entity executing each step will be described as a "client". The method includes the following steps (1610-1620).

[0101] Step 1610: The first screen frame is displayed, which is a screen showing the 3D virtual environment captured by a virtual camera with a virtual tracking object in the 3D virtual environment as the visual focus.

[0102] Step 1620: In response to the movement of at least one of the self-character and the first lock character, the second screen frame is displayed based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame, wherein the single-frame target position and single-frame target orientation are determined based on the target position and target orientation of the virtual camera, the target position and target orientation of the virtual camera are determined based on the target position of the virtual tracking object, the distance between the target position of the virtual camera and the target position of the virtual tracking object is smaller than the distance between the target position of the virtual camera and the target position of the first lock character, and the first lock character refers to the lock target corresponding to the self-character under character lock conditions.

[0103] Under character lock conditions, the positions of both the user's own character and the first locked character may move. Therefore, the virtual camera's position and orientation must be adjusted in accordance with the changes in the positions of the user's own character and the first locked character so that the screen frame captured by the virtual camera includes both the user's own character and the locked character as much as possible.

[0104] In the exemplary embodiment, step 1620 includes several substeps.

[0105] 1. In response to the movement of the self-character and at least one of the first lock character, the target position of the self-character and the target position of the first lock character are determined.

[0106] 2. The target position of the virtual follower object is determined based on the target position of the own character and the target position of the first lock character.

[0107] 3. Based on the target position of the virtual tracking object, the target position and target orientation of the virtual camera are determined.

[0108] 4. Based on the target position and target orientation of the virtual camera, and the actual position and orientation of the virtual camera in the first screen frame, the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame are obtained by interpolation.

[0109] 5. Based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame, the second screen frame is generated and displayed.

[0110] Optionally, embodiments of this application may also support switching the locked character under a character-locked state. This method includes the following steps:

[0111] When a character is locked, the virtual camera is controlled to rotate around the virtual tracking object in response to field-of-view adjustments to the character itself.

[0112] During the rotation process, the pre-lock character in the 3D virtual environment is determined, and the third screen frame is displayed. This third screen frame displays the pre-lock character and its corresponding pre-lock Mac.

[0113] In response to a lock confirmation operation for a pre-lock character, the pre-lock character is determined as the second lock character, and the fourth screen frame is displayed. This fourth screen frame displays the second lock character and its corresponding lock mark.

[0114] Selectively, the virtual camera update process under non-character-locked conditions includes the following steps:

[0115] In a non-character-locked state, the single-frame target position of the virtual tracking object in the fifth screen frame is obtained by updating the position of the virtual tracking object with the self-character as the tracking target.

[0116] The fifth screen frame is displayed based on the single-frame target position and single-frame target orientation of the virtual camera in the fifth screen frame, the single-frame target position of the virtual camera in the fifth screen frame is determined based on the single-frame target position of the virtual tracking object in the fifth screen frame, and the single-frame target orientation of the virtual camera in the fifth screen frame is determined based on the actual orientation of the virtual camera in the first screen frame.

[0117] For details not described in detail in this embodiment, refer to the descriptions of other method embodiments described above.

[0118] To summarize the above, in the invention described in this application, a virtual tracking object in a 3D virtual environment is used as the visual focus of the virtual camera. Under character lock conditions, the position information of the virtual tracking object is determined based on the position information of the user's own character and the position information of the locked character. Then, the position and orientation of the virtual camera are updated based on the position information of the virtual tracking object. When determining the position information of the virtual tracking object, both the position information of the user's own character and the position information of the locked character are taken into consideration. This avoids occlusion of the locked character by the user's own character, resulting in more rational and accurate determined position information of the virtual tracking object. Furthermore, in a screen captured by the virtual camera with this virtual tracking object as the visual focus, the rationality of the camera movement of the virtual camera under character lock conditions is increased, ensuring that the user's own character and the locked character are presented to the user more rationally and clearly, thus improving the display effect of the screen.

[0119] Furthermore, by maintaining the distance between the virtual camera's target position and the virtual tracking object's target position to be smaller than the distance between the virtual camera's target position and the first locked character's target position, the virtual tracking object will move closer to the virtual camera than the first locked character within the virtual camera's field of view. This avoids the first locked object obstructing the virtual camera's view, thus increasing the rationality of the virtual camera's camera movement under character lock conditions.

[0120] The following are apparatus embodiments of the present application, which can carry out the method embodiments of the present application. Details not shown in the apparatus embodiments of the present application can be referred to in the method embodiments of the present application.

[0121] Referring to Figure 17, a block diagram of a screen display device according to one embodiment of the present application is shown. The device has the function of realizing the method embodiment described above, and this function may be realized in hardware or by executing the corresponding software in hardware. The device may be the terminal described above or may be located within a terminal. As shown in Figure 17, the device 1700 includes a screen display module 1710, an object position determination module 1720, a camera position determination module 1730, and a single frame position determination module 1740.

[0122] The screen display module 1710 is configured to display a first screen frame, the first screen frame being a screen captured by a virtual camera of the 3D virtual environment with a virtual tracking object in the 3D virtual environment as the visual focus.

[0123] The object position determination module 1720 is configured to determine the target position of the virtual tracking object based on the target position of its own character and the target position of the first lock character, where the first lock character refers to the lock target corresponding to the own character under character lock conditions.

[0124] The camera position determination module 1730 is configured to determine the target position and target orientation of the virtual camera based on the target position of the virtual tracking object, wherein the distance between the target position of the virtual camera and the target position of the virtual tracking object is smaller than the distance between the target position of the virtual camera and the target position of the first lock character.

[0125] The single-frame position determination module 1740 is configured to obtain the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame by interpolation, based on the target position and target orientation of the virtual camera and the actual position and actual orientation of the virtual camera in the first screen frame.

[0126] The screen display module 1710 is further configured to generate and display the second screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame.

[0127] In some embodiments, the single-frame position determination module 1740 is The system is configured to determine the rotational trajectory of the virtual camera based on the target position of the virtual tracking object, wherein the plane on which the rotational trajectory is located is parallel to the reference plane of the 3D virtual environment and the central axis of the rotational trajectory passes through the target position of the virtual tracking object, and Based on the target position of the virtual tracking object and the target position of the first lock character, the system is configured to determine the target position and target orientation of the virtual camera on the rotational trajectory.

[0128] In some embodiments, the single-frame position determination module 1740 further, A first interpolation coefficient is determined based on a first distance, where the first distance refers to the distance between the first lock character and the self-character, and the first interpolation coefficient is used to determine the amount of position adjustment of the virtual camera. Based on the target position of the virtual camera, the actual position of the virtual camera in the first screen frame, and the first interpolation coefficient, the single-frame target position of the virtual camera in the second screen frame is determined. A second interpolation coefficient is determined based on a second distance, where the second distance refers to the distance between the first lock character and the central axis of the screen, and the second interpolation coefficient is used to determine the amount of orientation adjustment of the virtual camera, and, The system is configured to determine the single-frame target orientation of the virtual camera in the second screen frame based on the target orientation of the virtual camera, the actual orientation of the virtual camera in the first screen frame, and the second interpolation coefficient.

[0129] In some embodiments, the first interpolation coefficient shows a positive correlation with the first distance, and the second interpolation coefficient shows a positive correlation with the second distance.

[0130] In some embodiments, the object position determination module 1720 is Under the character lock state, the target position of the self-character is used as the tracking target, and the target position of the virtual tracking object is determined on the target line, such that the target line is perpendicular to the line connecting the target position of the self-character and the target position of the first locked character. If the target position of the virtual tracking object awaiting determination satisfies the conditions, the target position of the virtual tracking object awaiting determination is determined as the target position of the virtual tracking object. If the target position of the virtual tracking object awaiting determination does not satisfy the above conditions, the system is configured to obtain the target position of the virtual tracking object by adjusting the target position of the virtual tracking object awaiting determination.

[0131] Selectively, the above condition includes the offset distance between the target position of the virtual tracking object and the target position of the self-character being less than or equal to the maximum offset amount. The object position determination module 1720 is further configured to obtain the target position of the virtual tracking object by adjusting the target position of the virtual tracking object with respect to the maximum offset amount if the offset distance between the target position of the virtual tracking object and the target position of the self-character is greater than the maximum offset amount, so that the offset distance between the target position of the virtual tracking object and the target position of the self-character is less than or equal to the maximum offset amount.

[0132] Selectively, the condition includes the fact that the pending target position of the virtual follow object lies within the back angle region of the self-character. The object position determination module 1720 is further configured to obtain the target position of the virtual follow object by adjusting the pending target position of the virtual follow object relative to the back angle region of the self-character if the pending target position of the virtual follow object lies outside the back angle region of the self-character, so that the target position of the virtual follow object lies within the back angle region of the self-character.

[0133] In some embodiments, the camera positioning module 1730 controls the virtual camera to rotate around the virtual tracking object in response to a field of view adjustment operation on the character while the character is locked.

[0134] The screen display module 1710 is configured to determine the prelock character in the three-dimensional virtual environment during the rotation process and to display a third screen frame, the third screen frame displaying the prelock character and its corresponding prelock mark.

[0135] The screen display module 1710 is further configured to determine the pre-lock character as the second lock character in response to a lock confirmation operation to the pre-lock character and to display a fourth screen frame, the fourth screen frame displaying the second lock character and its corresponding lock mark.

[0136] In some embodiments, the object positioning module 1720 is further configured to obtain the single-frame target position of the virtual tracking object in the fifth screen frame by updating the position of the virtual tracking object by interpolation, using the self-character as the tracking target, while in a non-character-locked state.

[0137] The single-frame position determination module 1740 is further configured to determine the single-frame target position of the virtual camera in the fifth screen frame based on the single-frame target position of the virtual tracking object in the fifth screen frame, and if no field adjustment operation is obtained for the self-character, to determine the actual orientation of the virtual camera in the first screen frame as the single-frame target orientation of the virtual camera in the fifth screen frame, while if a field adjustment operation is obtained for the self-character, to obtain the single-frame target orientation of the virtual camera in the fifth screen frame by adjusting the actual orientation of the virtual camera in the first screen frame based on the field adjustment operation.

[0138] The screen display module 1710 is further configured to generate and display the fifth screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the fifth screen frame.

[0139] Selectively, the object position determination module 1720 further, Under the non-character-locked state, a third interpolation coefficient is determined based on a third distance, where the third distance refers to the distance between the character itself and the virtual tracking object, the third interpolation coefficient is used to determine the amount of positional adjustment of the virtual tracking object, the third interpolation coefficient shows a positive correlation with the third distance, and, The system is configured to determine the single-frame target position of the virtual tracking object in the fifth screen frame based on the actual position of the self-character in the first screen frame, the actual position of the virtual tracking object in the first screen frame, and the third interpolation coefficient.

[0140] To summarize the above, in the invention described in this application, a virtual tracking object in a 3D virtual environment is used as the visual focus of the virtual camera. Under character lock conditions, the position information of the virtual tracking object is determined based on the position information of the user's own character and the position information of the locked character. Then, the position and orientation of the virtual camera are updated based on the position information of the virtual tracking object. When determining the position information of the virtual tracking object, both the position information of the user's own character and the position information of the locked character are taken into consideration. This avoids occlusion of the locked character by the user's own character, resulting in more rational and accurate determined position information of the virtual tracking object. Furthermore, it ensures that the user's own character and the locked character are presented to the user more rationally and clearly in the screen captured by the virtual camera with the virtual tracking object as the visual focus. This increases the rationality of the virtual camera's movement under character lock conditions and improves the display effect of the screen.

[0141] Furthermore, by maintaining the distance between the virtual camera's target position and the virtual tracking object's target position to be smaller than the distance between the virtual camera's target position and the first locked character's target position, the virtual tracking object will move closer to the virtual camera than the first locked character within the virtual camera's field of view. This avoids the first locked object obstructing the virtual camera's view, thus increasing the rationality of the virtual camera's camera movement under character lock conditions.

[0142] In another exemplary embodiment of this application, a screen display device is proposed. As shown in Figure 17, the device 1700 includes a screen display module 1710.

[0143] The screen display module 1710 is configured to display a first screen frame, the first screen frame being a screen captured by a virtual camera, with a virtual tracking object in the 3D virtual environment as the visual focus.

[0144] The screen display module 1710 is further configured to display the second screen frame in response to the movement of at least one of its own character and the first lock character, based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame, wherein the single-frame target position and single-frame target orientation are determined based on the target position and target orientation of the virtual camera, the target position and target orientation of the virtual camera are determined based on the target position of the virtual tracking object, the distance between the target position of the virtual camera and the target position of the virtual tracking object is smaller than the distance between the target position of the virtual camera and the target position of the first lock character, and the first lock character refers to the lock target corresponding to the own character under the character lock state.

[0145] In some embodiments, as shown in Figure 17, the apparatus 1700 may further include an object positioning module 1720, a camera positioning module 1730, and a single-frame positioning module 1740.

[0146] The object position determination module 1720 is configured to determine the target position of the self-character and the target position of the first lock character in response to the movement of at least one of the self-character and the first lock character, and to determine the target position of the virtual follow object based on the target position of the self-character and the target position of the first lock character.

[0147] The camera position determination module 1730 is configured to determine the target position and target orientation of the virtual camera based on the target position of the virtual tracking object.

[0148] The single-frame position determination module 1740 is configured to obtain the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame by interpolation, based on the target position and target orientation of the virtual camera and the actual position and actual orientation of the virtual camera in the first screen frame.

[0149] The screen display module 1710 is further configured to generate and display the second screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the second screen frame.

[0150] In some embodiments, the camera positioning module 1730 further controls the virtual camera to rotate around the virtual tracking object in response to a field of view adjustment operation on the character while the character is locked.

[0151] The screen display module 1710 is further configured to determine a prelock character in the three-dimensional virtual environment during the rotation process and to display a third screen frame, the third screen frame displaying the prelock character and its corresponding prelock mark.

[0152] The screen display module 1710 is further configured to determine the pre-lock character as the second lock character in response to a lock confirmation operation to the pre-lock character and to display a fourth screen frame, the fourth screen frame displaying the second lock character and its corresponding lock mark.

[0153] In some embodiments, the object positioning module 1720 is further configured to obtain the single-frame target position of the virtual tracking object in the fifth screen frame by updating the position of the virtual tracking object with the self-character as the tracking target while in a non-character-locked state.

[0154] The screen display module 1710 is further configured to display the fifth screen frame based on the single-frame target position and single-frame target orientation of the virtual camera in the fifth screen frame, wherein the single-frame target position of the virtual camera in the fifth screen frame is determined based on the single-frame target position of the virtual tracking object in the fifth screen frame, and the single-frame target orientation of the virtual camera in the fifth screen frame is determined based on the actual orientation of the virtual camera in the first screen frame.

[0155] To summarize the above, in the invention described in this application, a virtual tracking object in a 3D virtual environment is used as the visual focus of the virtual camera. Under character lock conditions, the position information of the virtual tracking object is determined based on the position information of the user's own character and the position information of the locked character. Then, the position and orientation of the virtual camera are updated based on the position information of the virtual tracking object. When determining the position information of the virtual tracking object, both the position information of the user's own character and the position information of the locked character are taken into consideration. This avoids occlusion of the locked character by the user's own character, resulting in more rational and accurate determined position information of the virtual tracking object. Furthermore, it ensures that the user's own character and the locked character are presented to the user more rationally and clearly in the screen captured by the virtual camera with the virtual tracking object as the visual focus. This increases the rationality of the virtual camera's movement under character lock conditions and improves the display effect of the screen.

[0156] Furthermore, by maintaining the distance between the virtual camera's target position and the virtual tracking object's target position to be smaller than the distance between the virtual camera's target position and the first locked character's target position, the virtual tracking object will move closer to the virtual camera than the first locked character within the virtual camera's field of view. This avoids the first locked object obstructing the virtual camera's view, thus increasing the rationality of the virtual camera's camera movement under character lock conditions.

[0157] In particular, regarding the apparatus according to the above embodiment, while we have explained its functions using only the divided functional modules as an example, in actual applications, the above functions can be distributed to different functional modules as needed. In other words, the internal structure of the device can be divided into different functional modules to realize all or part of the functions described above. Furthermore, the apparatus according to the above embodiment belongs to the same concept as the method embodiment, and its specific implementation process can be found in the method embodiment; therefore, no further explanation will be provided here.

[0158] Referring to Figure 18, a block diagram of the configuration of a terminal device 1800 according to one embodiment of this application is shown. The terminal device 1800 may also be the terminal device 10 in the implementation environment shown in Figure 1, and it is for implementing the screen display method according to the embodiment described above. Specifically, it is as follows.

[0159] Typically, terminal device 1800 includes a processor 1801 and memory 1802.

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

[0161] The memory 1802 may include one or more computer-readable storage media, which may be non-temporary. The memory 1802 may include high-speed random-access memory, non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices, etc. In some embodiments, the non-temporary computer-readable storage media in the memory 1802 are configured to store a computer program, and when the computer program is executed on one or more processors, the screen display method described above is realized.

[0162] In some embodiments, the terminal device 1800 may further include a peripheral device interface 1803 and at least one peripheral device. The processor 1801, memory 1802, and peripheral device interface 1803 may be connected via a bus or signal lines. Each peripheral device may be connected to the peripheral device interface 1803 via a bus, signal lines, or circuit board. Specifically, the peripheral device includes at least one of a radio frequency circuit 1804, a display screen 1805, an audio circuit 1806, and a power supply 1807.

[0163] Those skilled in the art will understand that the configuration shown in Figure 18 is not limiting to the terminal device 1800, and that it may have more or fewer components than shown, combine several components, or use a different component arrangement.

[0164] In one exemplary embodiment, a computer-readable storage medium in which a computer program is stored is further proposed, and the screen display method described above is realized when the computer program is executed by a processor.

[0165] Selectively, the computer-readable storage medium in question may include ROM (Read-Only Memory), RAM (Random Access Memory), SSD (Solid State Drives), or optical discs. Here, examples of random access memory include ReRAM (Resistance Random Access Memory) and DRAM (Dynamic Random Access Memory).

[0166] In one exemplary embodiment, a computer program product or computer program is proposed, which includes computer instructions stored in a computer-readable storage medium. The processor of a terminal device reads and executes the computer instructions from the computer-readable storage medium, thereby executing the screen display method described above on the terminal device.

[0167] In particular, it is important to explain that the information (including, but not limited to, object device information and object personal information), data (including, but not limited to, analytical data, stored data, and displayed data) and signals relating to this application are all authorized by the object or fully authorized by each party, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, user accounts and 3D virtual environments relating to this application were obtained with full authorization.

[0168] It should be understood that “plural” as used herein refers to two or more. “And / or” describes the relationship between related objects and indicates that there may be three possible relationships. For example, A and / or B can represent three situations: A existing alone, A and B existing together, and B existing alone. The symbol “ / ” generally indicates that the preceding and succeeding related objects are in an “or” relationship. Furthermore, the step numbers described herein are merely examples of possible execution orders between steps, and in some other embodiments, the steps may not be performed in numerical order. For example, two different numbered steps may be performed simultaneously, or two different numbered steps may be performed in the reverse order shown, and are not limited to these examples of this application.

[0169] The above description is merely an exemplary embodiment of the present application and does not limit the present application. Any amendments, equivalent substitutions, improvements, etc., made within the scope of the spirit and principles of the present application shall all be included in the scope of protection of the present application.

Claims

1. A screen display method performed by a terminal device, A step of displaying a screen of a three-dimensional virtual environment, wherein the screen of the three-dimensional virtual environment displays the self-character and a first lock character. The steps include adjusting the display content of the screen of the three-dimensional virtual environment in response to the field of view adjustment operation for the self-character, Based on the aforementioned field of view adjustment operation, the steps include displaying the second lock character, which has been switched from the self-character, on the screen of the three-dimensional virtual environment, A method that includes this.

2. The step of displaying the second lock character, which has been switched from the self character, on the screen of the three-dimensional virtual environment based on the field of view adjustment operation, Based on the aforementioned field of view adjustment operation, the steps include displaying the self-character and the pre-locked character on the screen of the three-dimensional virtual environment, The steps include: determining the pre-lock character as the second lock character in response to a lock confirmation operation on the pre-lock character, and displaying the self-character and the second lock character on the screen of the three-dimensional virtual environment; The method according to claim 1.

3. The step of displaying the self-character and the pre-locked character on the screen of the three-dimensional virtual environment based on the field of view adjustment operation is: The process includes the step of displaying the self-character, the pre-lock character and its corresponding pre-lock mark on the screen of the three-dimensional virtual environment. The method according to claim 2.

4. The step of displaying the self character and the second lock character on the screen of the three-dimensional virtual environment is: The process includes the step of displaying the self-character, the second lock character, and the corresponding lock mark on the screen of the three-dimensional virtual environment. The method according to claim 2.

5. The field of view adjustment operation is a sliding operation on the screen by the user's finger, The aforementioned lock confirmation operation is the operation in which the user's finger leaves the screen and completes the slide operation. The method according to claim 2.