IP Library Granted Patent US 12,064,693
Granted Patent B2
US 12,064,693 · App. 17/492,819 · Granted Aug 20, 2024

Virtual object selection method and apparatus, device, and storage medium

Inventors: Yu Lin Wan (Shenzhen, CN); Shan Dong Su (Shenzhen, CN)
Assignee: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LTD
A63F13/56A63F13/42A63F13/422A63F13/57A63F13/837G06F3/04815A63F2300/308A63F2300/807
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,064,693
App. No.
17/492,819
Granted
Aug 20, 2024
Kind
B2
Abstract

Provided are a virtual object selection method and apparatus, a terminal, and a storage medium, belonging to the field of computer and Internet technologies. When a client controls a first virtual object to perform a first operation, and a plurality of second virtual objects are distributed densely in an execution range of the first operation, the client offsets logical positions of the plurality of second virtual objects to ensure that the plurality of second virtual objects may be distinguished and a target virtual object is selected from the plurality of second virtual objects based on offset logical positions. Accordingly, a user is prevented from spending much time to select the target virtual object from the execution range of the first operation, thereby reducing operation time costs of the user and improving the operation efficiency.

Claims (68)

1. A virtual object selection method, performed by a terminal, the method comprising:

displaying a user interface, the user interface comprising an image corresponding to a virtual environment and a first virtual object located in the virtual environment;

obtaining, based on a first operation being performed by the first virtual object, an execution range of the first operation of the first virtual object in the virtual environment;

offsetting, based on a density of a plurality of second virtual objects in the execution range satisfying a first condition, a logical position of at least one second virtual object in the plurality of second virtual objects, to obtain an offset logical position of the at least one second virtual object, the logical position being a position used in processing the at least one second virtual object in a logical layer; and

selecting a target virtual object, on which the first operation is performed, from the plurality of second virtual objects based on the offset logical position of the at least one second virtual object.

2. The method according to claim 1 , wherein an interface position of the at least one second virtual object does not change according to a change of the logical position of the at least one second virtual object.

3. The method according to claim 1 , wherein there are n second virtual objects, n being an integer greater than 1, and the offsetting comprises:

determining an offset direction of an i th second virtual object in the n second virtual objects and determining an offset distance of the i th second virtual object, the offset direction being a direction away from at least one second virtual object, and i being a positive integer less than or equal to n; and

moving a logical position of the i th second virtual object along the offset direction by the offset distance, to obtain an offset logical position of the i th second virtual object.

4. The method according to claim 3 , wherein the determining the offset direction of the i th second virtual object comprises:

determining repulsive virtual objects corresponding to the i th second virtual object, the repulsive virtual objects comprising other second virtual objects of which distances from the i th second virtual object are less than a first distance;

obtaining repulsive forces of the repulsive virtual objects to the i th second virtual object, a magnitude of the repulsive force being associated with attribute information of the repulsive virtual object, and a direction of the repulsive force being a direction from the repulsive virtual object to the i th second virtual object; and

determining a direction of a resultant force of repulsive forces of the repulsive virtual objects to the i th second virtual object as the offset direction of the i th second virtual object.

5. The method according to claim 3 , wherein the determining the offset direction of the i th second virtual object comprises:

obtaining a center position of the execution range; and

determining a direction from the center position to the i th second virtual object as the offset direction of the i th second virtual object.

6. The method according to claim 3 , wherein the determining the offset direction of the i th second virtual object comprises:

obtaining a central axis of the execution range; and

determining a direction opposite to a direction of the i th second virtual object relative to the central axis as the offset direction of the i th second virtual object.

7. The method according to claim 3 , wherein the determining the offset distance of the i th second virtual object comprises:

obtaining a category to which the i th second virtual object belongs; and

determining the offset distance of the i th second virtual object according to the category to which the i th second virtual object belongs.

8. The method according to claim 3 , further comprising, after the moving the logical position of the i th second virtual object:

obtaining a distance between the offset logical position of the i th second virtual object and the first virtual object;

obtaining, based on the distance being greater than a second distance, an offset angle, which is an angle formed by logical positions of the i th second virtual object, before and after an offset, relative to the first virtual object;

performing, based on the offset angle being less than an angle threshold, another offsetting on the logical position of the i th second virtual object by again determining the offset direction of the i th second virtual object and determining the offset distance of the i th second virtual object; and

obtaining a new offset logical position of the i th second virtual object based on the offset angle, obtained with respect to the another offsetting, being greater than or equal to the angle threshold.

9. The method according to claim 1 , wherein there are n second virtual objects, n being an integer greater than 1; and

after the obtaining the execution range of the first operation, the method further comprises:

determining distances between every two second virtual objects in the n second virtual objects; and

based on a distance that is less than a first distance being included in the distances, determining that the density satisfies the first condition.

10. The method according to claim 9 , further comprising

obtaining an operation effect corresponding to the first operation, the operation effect being an effect produced by the first operation; and

determining the first distance according to the operation effect.

11. The method according to claim 1 , wherein the selecting the target virtual object comprises:

obtaining a center position of the execution range of the first operation;

determining distances between offset logical positions of the plurality of second virtual objects and the center position; and

determining a second virtual object of which the distance satisfies a second condition as the target virtual object.

12. A terminal, comprising a processor and a memory, the memory storing at least one instruction, at least one program, a code set, or an instruction set, the at least one instruction, the at least one program, the code set, or the instruction set being executable by the processor to implement the method according to claim 1 .

13. A virtual object selection apparatus, comprising:

at least one memory configured to store program code; and

at least one processor configured to read the program code and operate as instructed by the program code, the program code comprising:

user interface display code configured to cause the at least one processor to display a user interface, the user interface comprising an image corresponding to a virtual environment and a first virtual object located in the virtual environment;

execution range obtaining code configured to cause the at least one processor to, based on a first operation being performed by the first virtual object, obtain an execution range of the first operation of the first virtual object in the virtual environment;

logical position offset code configured to cause the at least one processor to offset, based on a density of a plurality of second virtual objects in the execution range satisfying a first condition, a logical position of at least one second virtual object in the plurality of second virtual objects, to obtain an offset logical position of the at least one second virtual object, the logical position being a position used in processing the at least one second virtual object in a logical layer; and

target object selection code configured to cause the at least one processor to select a target virtual object, on which the first operation is performed, from the plurality of second virtual objects based on the offset logical position of the at least one second virtual object.

14. The apparatus according to claim 13 , wherein the user interface display code is further configured to cause the at least one processor to control such that an interface position of the at least one second virtual object does not change according to a change of the logical position of the at least one second virtual object.

15. The apparatus according to claim 13 , wherein there are n second virtual objects, n being an integer greater than 1, and the logical position offset code comprises:

determination sub-code configured to cause the at least one processor to determine an offset direction of an i th second virtual object in the n second virtual objects and determine an offset distance of the i th second virtual object, the offset direction being a direction away from at least one second virtual object, and i being a positive integer less than or equal to n; and

movement sub-code configured to cause the at least one processor to move a logical position of the i th second virtual object along the offset direction by the offset distance, to obtain an offset logical position of the i th second virtual object.

16. The apparatus according to claim 15 , wherein the determining the determination sub-code is configured to cause the at least one processor to determine the offset direction of the i th second virtual object by:

determining repulsive virtual objects corresponding to the i th second virtual object, the repulsive virtual objects comprising other second virtual objects of which distances from the i th second virtual object are less than a first distance;

obtaining repulsive forces of the repulsive virtual objects to the i th second virtual object, a magnitude of the repulsive force being associated with attribute information of the repulsive virtual object, and a direction of the repulsive force being a direction from the repulsive virtual object to the i th second virtual object; and

determining a direction of a resultant force of repulsive forces of the repulsive virtual objects to the i th second virtual object as the offset direction of the i th second virtual object.

17. The apparatus according to claim 15 , wherein the determination sub-code is configured to cause the at least one processor to determine the offset direction of the i th second virtual object by:

obtaining a center position of the execution range; and

determining a direction from the center position to the i th second virtual object as the offset direction of the i th second virtual object.

18. The apparatus according to claim 15 , wherein the determination sub-code is configured to cause the at least one processor to determine the offset direction of the i th second virtual object by:

obtaining a central axis of the execution range; and

determining a direction opposite to a direction of the i th second virtual object relative to the central axis as the offset direction of the i th second virtual object.

19. The apparatus according to claim 15 , wherein the determination sub-code is configured to cause the at least one processor to determine the offset direction of the i th second virtual object by:

obtaining a category to which the i th second virtual object belongs; and

determining the offset distance of the i th second virtual object according to the category to which the i th second virtual object belongs.

20. A non-transitory computer-readable storage medium, storing at least one program executable by at least one processor to perform:

displaying a user interface, the user interface comprising an image corresponding to a virtual environment and a first virtual object located in the virtual environment;

obtaining, based on a first operation being performed by the first virtual object, an execution range of the first operation of the first virtual object in the virtual environment;

offsetting, based on a density of a plurality of second virtual objects in the execution range satisfying a first condition, a logical position of at least one second virtual object in the plurality of second virtual objects, to obtain an offset logical position of the at least one second virtual object, the logical position being a position used in processing the at least one second virtual object in a logical layer; and

selecting a target virtual object, on which the first operation is performed, from the plurality of second virtual objects based on the offset logical position of the at least one second virtual object.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2021
From: WAN, YU LIN; SU, SHAN DONG
To: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LTD
Reel/Frame 057689/0071 →
Priority Claims (1)
CN 202010507561.6 · Jun 5, 2020 · national
Continuity (2)
Continuation PCTCN2021095052 · May 21, 2021
Related Publication 20220023760A1 · Jan 27, 2022
Cited By (3)
US 12,420,196 US 12,478,874 US 12,654,101