IP Library › Granted Patent US 11,513,657
Granted Patent B2
US 11,513,657 · App. 17/359,497 · Granted Nov 29, 2022

Method and apparatus for controlling movement of virtual object, terminal, and storage medium

Inventors: Junxiang Wang (Shenzhen, CN); Yizhong Hu (Shenzhen, CN)
Assignee: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
G06F3/04815A63F13/42G06F3/0488A63F13/2145
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 11,513,657
App. No.
17/359,497
Granted
Nov 29, 2022
Kind
B2
Abstract

This application provides a method and an apparatus for controlling movements of a virtual object. The method includes displaying a target perspective picture of a target application, and superimposing a virtual joystick and a movable area of the virtual joystick on the target perspective picture; starting the virtual joystick when a trigger operation corresponding to the virtual joystick is received; adjusting a position of the virtual joystick in the movable area according to a position change of a touch point when the virtual joystick is in an activated state, the position of the virtual joystick and a position of the touch point changing synchronously in real time when the touch point moves within an effective touch range, the effective touch range being larger than the movable area; and controlling a virtual object to move according to the position of the virtual joystick.

Claims (51)

1. A method for controlling movements of a virtual object, applied to a terminal, the method comprising:

displaying a virtual joystick and a circular movable area of the virtual joystick, the virtual joystick as displayed is smaller in area than the circular movable area;

moving a touch point from a first touch position (X 1 , Y 1 ) at a first moment to a second touch position (X 2 , Y 2 ) at a second moment, the first touch position (X 1 , Y 1 ) being different from the second touch position (X 2 , Y 2 ), and both the first touch position (X 1 , Y 1 ) and the second touch position (X 2 , Y 2 ) being outside of the circular movable area of the virtual joystick;

determining a position change of the touch point as (X 0 , Y 0 ), X 0 being X 2 −X 1 , and Y 0 being Y 2 −Y 1 ;

automatically positioning the virtual joystick at a first joystick position (x 1 , y 1 ) at the first moment, the first joystick position (x 1 , y 1 ) being an intersection of a line connecting a center of the circular movable area and the first touch position (X 1 , Y 1 ) of the touch point;

calculating an estimated position (A, B) of the virtual joystick, A being x 1 +X 0 , B being y 1 +Y 0 ; and

automatically positioning the virtual joystick at a second joystick position (x 2 , y 2 ) at the second moment, the second joystick position (x 2 , y 2 ) being an intersection of a line connecting the center of the circular movable area and an estimate the estimated position (A, B) of the virtual joystick, A being x 1 +X 0 , B being y 1 +Y 0 .

2. The method according to claim 1 , further comprising:

calculating a distance between coordinates (A, B) of the estimated position of the virtual joystick at the second moment and the center of the circular movable area; and

determining the second joystick position (x 2 , y 2 ) of the virtual joystick at the second moment further according to whether the distance is greater than a radius of the circular movable area.

3. The method according to claim 2 , further comprising:

determining the distance is not greater than a radius of the circular movable area; and

automatically re-positioning the virtual joystick at the estimated position at the second moment.

4. The method according to claim 1 , further comprising:

calculating a direction and a distance of the virtual joystick relative to the center of the circular movable area;

determining a moving direction and a moving speed of the virtual object according to the direction and the distance; and

controlling the virtual object to move according to the moving direction and the moving speed.

5. An apparatus for controlling movements of a virtual object, 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 loaded and executed by the processor to:

display a virtual joystick and a circular movable area of the virtual joystick, the virtual joystick as displayed is smaller in area than the circular movable area;

move a touch point from a first touch position (X 1 , Y 1 ) at a first moment to a second touch position (X 2 , Y 2 ) at a second moment, the first touch position (X 1 , Y 1 ) being different from the second touch position (X 2 , Y 2 ), and both the first touch position (X 1 , Y 1 ) and the second touch position (X 2 , Y 2 ) being outside of the circular movable area of the virtual joystick;

determine a position change of the touch point as (X 0 , Y 0 ), X 0 being X 2 −X 1 , and Y 0 being Y 2 −Y 1 ;

automatically position the virtual joystick at a first joystick position (x 1 , y 1 ) at the first moment, the first joystick position (x 1 , y 1 ) being an intersection of a line connecting a center of the circular movable area and the first touch position (X 1 , Y 1 ) of the touch point;

calculating an estimated position (A, B) of the virtual joystick, A being x 1 +X 0 , B being y 1 +Y 0 ; and

automatically position the virtual joystick at a second joystick position (x 2 , y 2 ) at the second moment, the second joystick position (x 2 , y 2 ) being an intersection of a line connecting the center of the circular movable area and an estimate the estimated position (A, B) of the virtual joystick, A being x 1 +X 0 , B being y 1 +Y 0 .

6. The apparatus according to claim 5 , wherein the processor is further configured to perform:

calculating a distance between coordinates (A, B) of the estimated position of the virtual joystick at the second moment and the center of the circular movable area; and

determining the second joystick position (x 2 , y 2 ) of the virtual joystick at the second moment further according to whether the distance is greater than a radius of the circular movable area.

7. The apparatus according to claim 6 , wherein the processor is configured to perform:

determining the distance is not greater than a radius of the circular movable area; and

automatically re-positioning the virtual joystick at the estimated position at the second moment.

8. The apparatus according to claim 5 , wherein the processor is configured to:

calculate a direction and a distance of the virtual joystick relative to the center of the circular movable area;

determine a moving direction and a moving speed of the virtual object according to the direction and the distance; and

control the virtual object to move according to the moving direction and the moving speed.

9. A non-transitory computer-readable storage medium, 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 loaded and executed by a processor to implement the method comprising:

displaying a virtual joystick and a circular movable area of the virtual joystick, the virtual joystick as displayed is smaller in area than the circular movable area;

moving a touch point from a first touch position (X 1 , Y 1 ) at a first moment to a second touch position (X 2 , Y 2 ) at a second moment, the first touch position (X 1 , Y 1 ) being different from the second touch position (X 1 , Y 1 ), and both the first touch position (X 1 , Y 1 ) and the second touch position (X 2 , Y 2 ) being outside of the circular movable area of the virtual joystick;

determining a position change of the touch point as (X 0 , Y 0 ), X 0 being X 2 −X 1 , and Y 0 being Y 2 −Y 1 ;

automatically positioning the virtual joystick at a first joystick position (x 1 , y 1 ) at the first moment, the first joystick position (x 1 , y 1 ) being an intersection of a line connecting a center of the circular movable area and the first touch position (X 1 , Y 1 ) of the touch point;

calculating an estimated position (A, B) of the virtual joystick, A being x 1 +X 0 , B being y 1 +Y 0 ; and

automatically positioning the virtual joystick at a second joystick position (x 2 , y 2 ) at the second moment, the second joystick position (x 2 , y 2 ) being an intersection of a line connecting the center of the circular movable area and an estimate the estimated position (A, B) of the virtual joystick, A being x 1 +X 0 , B being y 1 +Y 0 .

10. The computer-readable storage medium to claim 9 , wherein the method further comprises:

calculating a distance between coordinates (A, B) of the estimated position of the virtual joystick at the second moment and the center of the circular movable area; and

determining the second joystick position (x 2 , y 2 ) of the virtual joystick at the second moment further according to whether the distance is greater than a radius of the circular movable area.

11. The computer-readable storage medium according to claim 9 , wherein the method further comprises:

calculating a direction and a distance of the virtual joystick relative to the center of the circular movable area;

determining a moving direction and a moving speed of the virtual object according to the direction and the distance; and

controlling the virtual object to move according to the moving direction and the moving speed.

12. The computer-readable storage medium to claim 10 , wherein the method further comprises:

determining the distance is not greater than a radius of the circular movable area; and

automatically re-positioning the virtual joystick at the estimated position at the second moment.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2021
From: WANG, JUNXIANG; HU, YIZHONG
To: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
Reel/Frame 056678/0861 →
Priority Claims (1)
CN 201910487940.0 · Jun 5, 2019 · national
Continuity (2)
Continuation PCTCN2020092342 · May 26, 2020
Related Publication 20210326027A1 · Oct 21, 2021