IP Library Granted Patent US 12681570
Granted Patent B2
US 12681570 · App. 18/988,720 · Granted Jul 14, 2026

Method and apparatus for moving virtual object, electronic device, and storage medium

Inventor: Xiaoyang Wang (Beijing, CN)
Assignee: Beijing Zitiao Network Technology Co., Ltd.
G06F3/013G06F3/038G06T19/20G06F2203/0381G06T2200/24G06T2219/2016
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 12681570
App. No.
18/988,720
Granted
Jul 14, 2026
Kind
B2
Abstract

A method and apparatus for moving a virtual object, an electronic device, and a storage medium are provided. The method includes: displaying a computer-generated three-dimensional environment; detecting position data of an interactor and determining a first movement vector of the interactor in a world rectangular coordinate system; determining, based on the first movement vector, a second movement vector of the interactor in a local rectangular coordinate system with a user's own position as an origin; determining, based on the second movement vector, a third movement vector of the interactor in a local spherical coordinate system with the user's own position as an origin; determining, based on the third movement vector, a fourth movement vector of a target virtual object in the local spherical coordinate system; and obtaining second coordinates of the target virtual object based on first coordinates of the target virtual object and the fourth movement vector.

Claims (46)

1 . A method for moving a virtual object, comprising:

displaying a computer-generated three-dimensional environment;

determining a third movement vector of an interactor in a local spherical coordinate system with a user's own position as an origin;

determining, based on the third movement vector, a fourth movement vector of a target virtual object in the three-dimensional environment in the local spherical coordinate system; and

obtaining second coordinates of the target virtual object in the local spherical coordinate system based on first coordinates of the target virtual object currently in the local spherical coordinate system and the fourth movement vector.

2 . The method according to claim 1 , wherein the determining, based on the third movement vector, a fourth movement vector of a target virtual object in the three-dimensional environment in the local spherical coordinate system comprises:

determining the fourth movement vector based on the third movement vector and a distance between the user and the target virtual object in the three-dimensional environment.

3 . The method according to claim 1 , wherein the first movement vector is a movement vector of the interactor relative to the user.

4 . The method according to claim 1 , wherein the interactor comprises an interaction control device or a body part of the user.

5 . The method according to claim 1 , wherein the target virtual object comprises a three-dimensional object.

6 . The method according to claim 1 , further comprising: determining a virtual object in the three-dimensional environment at which the user is gazing as the target virtual object.

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

detecting position data of the interactor and determining based on the position data, a first movement vector of the interactor in a world rectangular coordinate system; and

determining, based on the first movement vector, a second movement vector of the interactor in a local rectangular coordinate system with the user's own position as an origin; and

wherein the third movement vector of the interactor is determined based on the second movement vector.

8 . The method according to claim 7 , further comprising:

determining, based on the second coordinates, third coordinates of the target virtual object in the world rectangular coordinate system.

9 . The method according to claim 8 , further comprising:

sending the second coordinates and/or the third coordinates to a requestor requesting a position of the target virtual object.

10 . The method according to claim 8 , further comprising:

recalculating, based on the third coordinates, coordinates of the target virtual object in the local rectangular coordinate system and/or the local spherical coordinate system.

11 . An electronic device, in communication with a display generation component and an input device, the display generation component displaying a computer-generated three-dimensional environment, the input device detecting position data of an interactor and determining, based on the position data, a first movement vector of the interactor in a world rectangular coordinate system, the electronic device comprising:

at least one memory and at least one processor,

wherein the memory is configured to store program code, and the processor is configured to call the program code stored in the memory to cause the electronic device to:

determine, based on the first movement vector, a second movement vector of the interactor in a local rectangular coordinate system with a user's own position as an origin;

determine, based on the second movement vector, a third movement vector of the interactor in a local spherical coordinate system with the user's own position as an origin;

determine, based on the third movement vector, a fourth movement vector of a target virtual object in the three-dimensional environment in the local spherical coordinate system; and

obtain second coordinates of the target virtual object in the local spherical coordinate system based on first coordinates of the target virtual object currently in the local spherical coordinate system and the fourth movement vector.

12 . The electronic device according to claim 11 , wherein the processor is configured to call the program code stored in the memory to further cause the electronic device to:

determine, based on the second coordinates, third coordinates of the target virtual object in the world rectangular coordinate system.

13 . The electronic device according to claim 12 , wherein the processor is configured to call the program code stored in the memory to further cause the electronic device to:

send the second coordinates and/or the third coordinates to a requestor requesting a position of the target virtual object.

14 . The electronic device according to claim 12 , wherein the processor is configured to call the program code stored in the memory to further cause the electronic device to:

recalculate, based on the third coordinates, coordinates of the target virtual object in the local rectangular coordinate system and/or the local spherical coordinate system.

15 . The electronic device according to claim 11 , wherein the program code causing the electronic device to determine, based on the third movement vector, a fourth movement vector of a target virtual object in the three-dimensional environment in the local spherical coordinate system further causes the electronic device to:

determine the fourth movement vector based on the third movement vector and a distance between the user and the target virtual object in the three-dimensional environment.

16 . The electronic device according to claim 11 , wherein the first movement vector is a movement vector of the interactor relative to the user.

17 . The electronic device according to claim 11 , wherein the interactor comprises an interaction control device or a body part of the user.

18 . The electronic device according to claim 11 , wherein the processor is configured to call the program code stored in the memory to further cause the electronic device to: determine a virtual object in the three-dimensional environment at which the user is gazing as the target virtual object.

19 . A non-transitory computer-readable storage medium at an electronic device in communication with a display generation component and an input device, the display generation component displaying a computer-generated three-dimensional environment, the input device detecting position data of an interactor and determining, based on the position data, a first movement vector of the interactor in a world rectangular coordinate system, the non-transitory computer storage medium storing program code that, when executed by a computer device, causes the computer device to:

determine, based on the first movement vector, a second movement vector of the interactor in a local rectangular coordinate system with a user's own position as an origin;

determine, based on the second movement vector, a third movement vector of the interactor in a local spherical coordinate system with the user's own position as an origin;

determine, based on the third movement vector, a fourth movement vector of a target virtual object in the three-dimensional environment in the local spherical coordinate system; and

obtain second coordinates of the target virtual object in the local spherical coordinate system based on first coordinates of the target virtual object currently in the local spherical coordinate system and the fourth movement vector.

20 . The non-transitory computer-readable storage medium according to claim 19 , wherein the program code further causes the computer device to:

determine, based on the second coordinates, third coordinates of the target virtual object in the world rectangular coordinate system.